openmp: Fix up cp/parser.c build with GCC 4.8 to 6
Christophe Lyon reported that cp/parser.c no longer compiles with GCC 4.8.5 after my recent OpenMP changes. A goto out; there crosses odsd variable declaration, and odsd has a vec<...> member where vec has = default; default constructor and gcc before r7-2822-gd0b0fbd9fce2f30a82558bf2308b3a7b56c2f364 treated that as error. Fixed by moving the declaration earlier before the goto. Tested on x86_64-linux with GCC 4.8.5 system gcc, committed to trunk as obvious. 2021-08-10 Jakub Jelinek <jakub@redhat.com> * parser.c (cp_parser_member_declaration): Move odsd declaration before cp_parser_using_declaration call to avoid errors with GCC 4.8 to 6.
This commit is contained in:
parent
84f906df4f
commit
d796cc7a3e
1 changed files with 2 additions and 2 deletions
|
@ -26651,8 +26651,9 @@ cp_parser_member_declaration (cp_parser* parser)
|
|||
|
||||
parser->colon_corrects_to_scope_p = false;
|
||||
|
||||
cp_omp_declare_simd_data odsd;
|
||||
if (cp_parser_using_declaration (parser, /*access_declaration=*/true))
|
||||
goto out;
|
||||
goto out;
|
||||
|
||||
/* Parse the decl-specifier-seq. */
|
||||
decl_spec_token_start = cp_lexer_peek_token (parser->lexer);
|
||||
|
@ -26662,7 +26663,6 @@ cp_parser_member_declaration (cp_parser* parser)
|
|||
&decl_specifiers,
|
||||
&declares_class_or_enum);
|
||||
|
||||
cp_omp_declare_simd_data odsd;
|
||||
if (decl_specifiers.attributes && (flag_openmp || flag_openmp_simd))
|
||||
cp_parser_handle_directive_omp_attributes (parser,
|
||||
&decl_specifiers.attributes,
|
||||
|
|
Loading…
Add table
Reference in a new issue