C++ : Remove an overzealous checking assert [PR97871]
It seems we accept __attribute__(()) without any diagnostic at present, so my added checking assert fires for something like: __attribute__ (()) int a; Fixed by removing the assert; in the case that the user enters something like: __attribute__ (()) extern "C" int foo; The diagnostic about attributes before linkage specs will fire and show the empty attributes. gcc/cp/ChangeLog: PR c++/97871 * parser.c (cp_parser_declaration): Remove checking assert.
This commit is contained in:
parent
1ffd8e34d1
commit
c2cf58f0e3
|
@ -13536,7 +13536,6 @@ cp_parser_declaration (cp_parser* parser, tree prefix_attrs)
|
|||
{
|
||||
cp_lexer_save_tokens (parser->lexer);
|
||||
attributes = cp_parser_attributes_opt (parser);
|
||||
gcc_checking_assert (attributes);
|
||||
cp_token *t1 = cp_lexer_peek_token (parser->lexer);
|
||||
cp_token *t2 = (t1->type == CPP_EOF
|
||||
? t1 : cp_lexer_peek_nth_token (parser->lexer, 2));
|
||||
|
|
Loading…
Reference in New Issue