------- Comment #2 from jason at gcc dot gnu dot org 2009-11-08 03:47 ------- Subject: Bug 18451
Author: jason Date: Sun Nov 8 03:47:36 2009 New Revision: 154006 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=154006 Log: PR c++/18451 PR c++/40738 * cp-tree.h (cp_decl_specifier_seq): Add any_type_specifiers_p. * parser.c (cp_parser_single_declaration): Call cp_parser_parse_and_diagnose_invalid_type_name here, too. (cp_parser_parameter_declaration): And here. (cp_parser_parse_and_diagnose_invalid_type_name): Be less picky about declarator form. Don't skip to the end of the block if we're in a declarator. (cp_parser_decl_specifier_seq): Set any_type_specifiers_p. (cp_parser_simple_declaration): Check it. (cp_parser_member_declaration): Likewise. (cp_parser_diagnose_invalid_type_name): Tweak error message. (cp_parser_expression_statement): Likewise. * decl2.c (grokfield): Mention decltype instead of typeof. Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl2.c trunk/gcc/cp/parser.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/cpp0x/variadic-ex1.C trunk/gcc/testsuite/g++.dg/ext/typedef-init.C trunk/gcc/testsuite/g++.dg/lookup/hidden-class1.C trunk/gcc/testsuite/g++.dg/lookup/hidden-class10.C trunk/gcc/testsuite/g++.dg/lookup/hidden-class5.C trunk/gcc/testsuite/g++.dg/lookup/hidden-class7.C trunk/gcc/testsuite/g++.dg/lookup/hidden-temp-class1.C trunk/gcc/testsuite/g++.dg/lookup/hidden-temp-class4.C trunk/gcc/testsuite/g++.dg/lookup/hidden-temp-class7.C trunk/gcc/testsuite/g++.dg/lookup/strong-using-2.C trunk/gcc/testsuite/g++.dg/other/typedef1.C trunk/gcc/testsuite/g++.dg/parse/access10.C trunk/gcc/testsuite/g++.dg/parse/constructor1.C trunk/gcc/testsuite/g++.dg/parse/crash38.C trunk/gcc/testsuite/g++.dg/parse/error3.C trunk/gcc/testsuite/g++.dg/parse/error36.C trunk/gcc/testsuite/g++.dg/parse/typespec1.C trunk/gcc/testsuite/g++.dg/template/typedef5.C trunk/gcc/testsuite/g++.old-deja/g++.pt/typename3.C trunk/gcc/testsuite/g++.old-deja/g++.pt/typename4.C trunk/gcc/testsuite/g++.old-deja/g++.pt/typename6.C trunk/gcc/testsuite/g++.old-deja/g++.robertl/eb94.C -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18451