gcc/cp: * decl.c (grokfndecl): If ::main is found not to return int, correct it after issuing a diagnostic. (grokdeclarator): If the incoming type was error_mark_node, do not complain about declaring something with no type. (start_function): Change check for ::main not returning int to an assertion, as grokfndecl now catches this when the user did it. * init.c (perform_member_init, sort_mem_initializers) (emit_mem_initializers): Make most diagnostics be issued on the line of current_function_decl, not whatever the current input line is. * parser.c (cp_lexer_peek_token_emit_debug_info): Surround definition and declaration with #ifdef ENABLE_CHECKING. Avoid unnecessary use of fprintf. (cp_lexer_print_token, cp_lexer_debug_stream): Adjust stub definitions to avoid warnings. (cp_lexer_new_main): Add assertion that first token is not a padding token. (cp_lexer_new_from_token_array): Fold into ... (cp_lexer_new_from_tokens): ... here. Add assertion that first token is not a padding token. (cp_lexer_set_source_position_from_token): Move nearer to callers. Remove unused lexer argument. (cp_lexer_peek_token): Just print debugging report (if enabled) and return lexer->next_token. (cp_lexer_skip_purged_tokens): Delete. (cp_lexer_next_token_is, cp_lexer_next_token_is_not): Make inline, simplify bodies. (cp_lexer_peek_nth_token): Add debugging report a la cp_lexer_peek_token. (cp_lexer_consume_token): Correct commentary. Advance over purged tokens here. Set current source position here, from token to be returned. Avoid unnecessary use of fprintf. (cp_lexer_purge_token): Advance next_token pointer over this and subsequent purged tokens. (cp_parser_error): Adjust source position to that of the peeked token. (cp_parser_push_lexer_for_tokens, cp_parser_pop_lexer): New functions. (cp_parser_string_literal): Remove some excessive cleverness. (cp_parser_enum_specifier): Call start_enum before consuming the opening brace. (cp_parser_member_declaration): Make the "extra semicolon" diagnostic consistently-worded with the other place this is diagnosed. Explicitly set the diagnostic location to the location of the offending semicolon. (cp_parser_enclosed_template_argument_list): Use %</%> quoting in diagnostics. Do not use cp_parser_require. Set location of diagnostics about improper use of '>>' to location of offending token. (cp_parser_late_parsing_for_member): Use cp_parser_push_lexer_for_tokens and cp_parser_pop_lexer. (cp_parser_late_parsing_default_args): Likewise. Manually move some logic outside the loop. gcc/testsuite: * g++.dg/ext/complit1.C * g++.dg/other/error2.C * g++.dg/other/nontype-1.C * g++.dg/parse/crash11.C * g++.dg/parse/crash12.C * g++.dg/parse/error15.C * g++.dg/parse/error4.C * g++.dg/parse/tmpl-outside1.C * g++.dg/parse/too-many-tmpl-args1.C * g++.dg/template/dependent-expr3.C * g++.dg/template/error10.C * g++.dg/template/instantiate1.C * g++.dg/template/vtable2.C * g++.dg/warn/Wshadow-1.C * g++.dg/warn/weak1.C * g++.old-deja/g++.brendan/crash16.C * g++.old-deja/g++.brendan/crash18.C * g++.old-deja/g++.brendan/crash48.C * g++.old-deja/g++.brendan/crash49.C * g++.old-deja/g++.brendan/crash55.C * g++.old-deja/g++.brendan/crash56.C * g++.old-deja/g++.brendan/crash8.C * g++.old-deja/g++.brendan/enum11.C * g++.old-deja/g++.brendan/enum8.C * g++.old-deja/g++.brendan/enum9.C * g++.old-deja/g++.brendan/friend3.C * g++.old-deja/g++.brendan/misc14.C * g++.old-deja/g++.bugs/900402_02.C * g++.old-deja/g++.bugs/900404_03.C * g++.old-deja/g++.bugs/900404_04.C * g++.old-deja/g++.bugs/900428_03.C * g++.old-deja/g++.jason/crash4.C * g++.old-deja/g++.jason/overload21.C * g++.old-deja/g++.jason/redecl1.C * g++.old-deja/g++.jason/report.C * g++.old-deja/g++.jason/rfg10.C * g++.old-deja/g++.jason/template30.C * g++.old-deja/g++.law/arm12.C * g++.old-deja/g++.law/ctors5.C * g++.old-deja/g++.law/cvt20.C * g++.old-deja/g++.law/init10.C * g++.old-deja/g++.law/init8.C * g++.old-deja/g++.law/visibility17.C * g++.old-deja/g++.law/visibility7.C * g++.old-deja/g++.mike/net8.C * g++.old-deja/g++.mike/p646.C * g++.old-deja/g++.mike/p700.C * g++.old-deja/g++.mike/p701.C * g++.old-deja/g++.mike/p811.C * g++.old-deja/g++.ns/template13.C * g++.old-deja/g++.other/array3.C * g++.old-deja/g++.other/crash25.C * g++.old-deja/g++.other/dtor3.C * g++.old-deja/g++.other/dtor4.C * g++.old-deja/g++.other/main1.C * g++.old-deja/g++.other/warn7.C * g++.old-deja/g++.pt/crash11.C * g++.old-deja/g++.pt/crash36.C * g++.old-deja/g++.pt/spec22.C * g++.old-deja/g++.pt/spec9.C * g++.old-deja/g++.pt/ttp52.C * g++.old-deja/g++.robertl/eb103.C * g++.old-deja/g++.robertl/eb121.C * g++.old-deja/g++.robertl/eb22.C * g++.old-deja/g++.robertl/eb8.C: Update locations and/or regexps of dg-error markers. Remove markers for some bogus messages that are no longer issued. libstdc++-v3: * testsuite/20_util/memory/auto_ptr/assign_neg.cc * testsuite/23_containers/map/operators/1_neg.cc * testsuite/23_containers/set/operators/1_neg.cc: Update locations and/or regexps of dg-error markers. From-SVN: r87985
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| alias1.C | Loading commit data... | |
| alias2.C | Loading commit data... | |
| alias3.C | Loading commit data... | |
| alias4.C | Loading commit data... | |
| alias6.C | Loading commit data... | |
| alias7.C | Loading commit data... | |
| anon1.C | Loading commit data... | |
| bogus1.C | Loading commit data... | |
| crash1.C | Loading commit data... | |
| crash2.C | Loading commit data... | |
| crash3.C | Loading commit data... | |
| crash4.C | Loading commit data... | |
| extern1.C | Loading commit data... | |
| friend1.C | Loading commit data... | |
| friend2.C | Loading commit data... | |
| invalid1.C | Loading commit data... | |
| koenig1.C | Loading commit data... | |
| koenig2.C | Loading commit data... | |
| koenig3.C | Loading commit data... | |
| koenig4.C | Loading commit data... | |
| koenig5.C | Loading commit data... | |
| koenig6.C | Loading commit data... | |
| koenig7.C | Loading commit data... | |
| koenig8.C | Loading commit data... | |
| koenig9.C | Loading commit data... | |
| lookup1.C | Loading commit data... | |
| lookup2.C | Loading commit data... | |
| lookup3.C | Loading commit data... | |
| lookup4.C | Loading commit data... | |
| lookup5.C | Loading commit data... | |
| main1.C | Loading commit data... | |
| ns1.C | Loading commit data... | |
| ns10.C | Loading commit data... | |
| ns11.C | Loading commit data... | |
| ns12.C | Loading commit data... | |
| ns13.C | Loading commit data... | |
| ns14.C | Loading commit data... | |
| ns15.C | Loading commit data... | |
| ns16.C | Loading commit data... | |
| ns17.C | Loading commit data... | |
| ns18.C | Loading commit data... | |
| ns19.C | Loading commit data... | |
| ns2.C | Loading commit data... | |
| ns3.C | Loading commit data... | |
| ns4.C | Loading commit data... | |
| ns5.C | Loading commit data... | |
| ns6.C | Loading commit data... | |
| ns7.C | Loading commit data... | |
| ns8.C | Loading commit data... | |
| ns9.C | Loading commit data... | |
| overload1.C | Loading commit data... | |
| overload2.C | Loading commit data... | |
| overload3.C | Loading commit data... | |
| overload4.C | Loading commit data... | |
| overload5.C | Loading commit data... | |
| scoped1.C | Loading commit data... | |
| template1.C | Loading commit data... | |
| template10.C | Loading commit data... | |
| template11.C | Loading commit data... | |
| template12.C | Loading commit data... | |
| template13.C | Loading commit data... | |
| template14.C | Loading commit data... | |
| template15.C | Loading commit data... | |
| template16.C | Loading commit data... | |
| template17.C | Loading commit data... | |
| template18.C | Loading commit data... | |
| template2.C | Loading commit data... | |
| template3.C | Loading commit data... | |
| template4.C | Loading commit data... | |
| template5.C | Loading commit data... | |
| template6.C | Loading commit data... | |
| template7.C | Loading commit data... | |
| template8.C | Loading commit data... | |
| template9.C | Loading commit data... | |
| type1.C | Loading commit data... | |
| type2.C | Loading commit data... | |
| undef1.C | Loading commit data... | |
| using1.C | Loading commit data... | |
| using10.C | Loading commit data... | |
| using11.C | Loading commit data... | |
| using12.C | Loading commit data... | |
| using13.C | Loading commit data... | |
| using14.C | Loading commit data... | |
| using2.C | Loading commit data... | |
| using3.C | Loading commit data... | |
| using4.C | Loading commit data... | |
| using5.C | Loading commit data... | |
| using6.C | Loading commit data... | |
| using7.C | Loading commit data... | |
| using8.C | Loading commit data... | |
| using9.C | Loading commit data... |