Handle [[likely]] on compound-statement.
I overlooked this case when adding [[likely]] handling to cp_parser_statement. * parser.c (cp_parser_statement): Handle [[likely]] on compound-statement. From-SVN: r275978
This commit is contained in:
parent
a519efbef8
commit
e0710fcf7d
3 changed files with 18 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2019-09-17 Jason Merrill <jason@redhat.com>
|
||||
|
||||
* parser.c (cp_parser_statement): Handle [[likely]] on
|
||||
compound-statement.
|
||||
|
||||
2019-09-19 Jason Merrill <jason@redhat.com>
|
||||
|
||||
Revert:
|
||||
|
|
|
@ -11297,7 +11297,10 @@ cp_parser_statement (cp_parser* parser, tree in_statement_expr,
|
|||
}
|
||||
/* Anything that starts with a `{' must be a compound-statement. */
|
||||
else if (token->type == CPP_OPEN_BRACE)
|
||||
statement = cp_parser_compound_statement (parser, NULL, BCS_NORMAL, false);
|
||||
{
|
||||
std_attrs = process_stmt_hotness_attribute (std_attrs, attrs_loc);
|
||||
statement = cp_parser_compound_statement (parser, NULL, BCS_NORMAL, false);
|
||||
}
|
||||
/* CPP_PRAGMA is a #pragma inside a function body, which constitutes
|
||||
a statement all its own. */
|
||||
else if (token->type == CPP_PRAGMA)
|
||||
|
|
9
gcc/testsuite/g++.dg/cpp2a/attr-likely5.C
Normal file
9
gcc/testsuite/g++.dg/cpp2a/attr-likely5.C
Normal file
|
@ -0,0 +1,9 @@
|
|||
// { dg-do compile { target c++11 } }
|
||||
|
||||
void f(int i)
|
||||
{
|
||||
if (i) [[likely]]
|
||||
{
|
||||
++i;
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue