re PR c++/20789 (ICE with incomplete type in template)
cp: PR c++/20789 * decl.c (cp_finish_decl): Clear runtime runtime initialization if in-class decl's initializer is bad. PR c++/21929 * parser.c (struct cp_parser): Document that scope could be error_mark. (cp_parser_diagnose_invalid_type_name): Cope with error_mark for scope. (cp_parser_nested_name_specifier): Return NULL_TREE on error. (cp_parser_postfix_expression): Deal with null or error_mark scope. (cp_parser_elaborated_type_specifier): Adjust cp_parser_nested_name_specifier call. * parser (cp_parser_skip_to_end_of_block_or_statement): Cleanup. testsuite: PR c++/21929 * g++.dg/parse/crash26.C: New. PR c++/20789 * g++.dg/init/member1.C: New. From-SVN: r100880
Showing
- gcc/cp/ChangeLog 19 additions, 0 deletionsgcc/cp/ChangeLog
- gcc/cp/decl.c 10 additions, 0 deletionsgcc/cp/decl.c
- gcc/cp/parser.c 42 additions, 33 deletionsgcc/cp/parser.c
- gcc/testsuite/ChangeLog 8 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/g++.dg/init/member1.C 18 additions, 0 deletionsgcc/testsuite/g++.dg/init/member1.C
- gcc/testsuite/g++.dg/parse/crash26.C 12 additions, 0 deletionsgcc/testsuite/g++.dg/parse/crash26.C
Loading
Please register or sign in to comment