[Bug c++/15946] Unhelpful error message when "typename" is omitted
jason at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Fri Nov 6 21:19:00 GMT 2009
------- Comment #5 from jason at gcc dot gnu dot org 2009-11-06 21:18 -------
Subject: Bug 15946
Author: jason
Date: Fri Nov 6 21:18:42 2009
New Revision: 153978
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=153978
Log:
PR c++/15946
* parser.c (cp_parser_check_template_parameters): Don't talk about
specialization at function scope.
(cp_parser_diagnose_invalid_type_name): Handle dependent scope.
(cp_parser_parse_and_diagnose_invalid_type_name): Likewise.
(cp_parser_expression_statement): Suggest typename.
* error.c (dump_decl) [SCOPE_REF]: Print the type here.
(dump_expr) [SCOPE_REF]: Call it.
(dump_type) [UNBOUND_CLASS_TEMPLATE]: Check TFF_UNQUALIFIED_NAME.
* cxx-pretty-print.c (pp_cxx_unqualified_id): Print class template
args.
Added:
trunk/gcc/testsuite/g++.dg/parse/error36.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cxx-pretty-print.c
trunk/gcc/cp/error.c
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/template/error26.C
trunk/gcc/testsuite/g++.old-deja/g++.other/typename1.C
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15946
More information about the Gcc-bugs
mailing list