@@ -16505,6 +16505,11 @@ c_parser_omp_target (c_parser *parser, e
return c_parser_omp_target_update (loc, parser, context);
}
}
+ if (!flag_openmp) /* flag_openmp_simd */
+ {
+ c_parser_skip_to_pragma_eol (parser, false);
+ return false;
+ }
stmt = make_node (OMP_TARGET);
TREE_TYPE (stmt) = void_type_node;
@@ -35981,6 +35981,11 @@ cp_parser_omp_target (cp_parser *parser,
return cp_parser_omp_target_update (parser, pragma_tok, context);
}
}
+ if (!flag_openmp) /* flag_openmp_simd */
+ {
+ cp_parser_skip_to_pragma_eol (parser, pragma_tok);
+ return false;
+ }
stmt = make_node (OMP_TARGET);
TREE_TYPE (stmt) = void_type_node;
@@ -0,0 +1,14 @@
+/* PR c++/79512 */
+/* { dg-options "-fopenmp-simd" } */
+
+void
+foo (void)
+{
+ #pragma omp target
+ #pragma omp teams
+ {
+ int i;
+ for (i = 0; i < 10; i++)
+ ;
+ }
+}