http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59073
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |burnus at gcc dot gnu.org
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Untested patch
diff --git a/gcc/c-family/c-omp.c b/gcc/c-family/c-omp.c
index f001a75..dea33c8 100644
--- a/gcc/c-family/c-omp.c
+++ b/gcc/c-family/c-omp.c
@@ -583 +583 @@ c_finish_omp_for (location_t locus, enum tree_code code,
- return NULL;
+ return error_mark_node;
diff --git a/gcc/c/c-parser.c b/gcc/c/c-parser.c
index 09cce1c..93ddf92 100644
--- a/gcc/c/c-parser.c
+++ b/gcc/c/c-parser.c
@@ -11575 +11575 @@ c_parser_omp_for_loop (location_t loc, c_parser *parser,
- if (stmt)
+ if (stmt != error_mark_node)
diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c
index 366756f..b256831 100644
--- a/gcc/cp/semantics.c
+++ b/gcc/cp/semantics.c
@@ -6405,2 +6405,2 @@ finish_omp_for (location_t locus, enum tree_code code,
- if (omp_for == NULL)
- return NULL;
+ if (omp_for == error_mark_node)
+ return error_mark_node;