diff options
Diffstat (limited to 'gcc/fortran/trans-openmp.c')
-rw-r--r-- | gcc/fortran/trans-openmp.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/fortran/trans-openmp.c b/gcc/fortran/trans-openmp.c index 294b6ef..b6284c9 100644 --- a/gcc/fortran/trans-openmp.c +++ b/gcc/fortran/trans-openmp.c @@ -2245,6 +2245,7 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, gfc_add_block_to_block (block, &se.post); c = build_omp_clause (where.lb->location, OMP_CLAUSE_IF); + OMP_CLAUSE_IF_MODIFIER (c) = ERROR_MARK; OMP_CLAUSE_IF_EXPR (c) = if_var; omp_clauses = gfc_trans_add_clause (c, omp_clauses); } @@ -2348,6 +2349,7 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, if (clauses->ordered) { c = build_omp_clause (where.lb->location, OMP_CLAUSE_ORDERED); + OMP_CLAUSE_ORDERED_EXPR (c) = NULL_TREE; omp_clauses = gfc_trans_add_clause (c, omp_clauses); } @@ -2523,6 +2525,7 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, if (clauses->seq) { c = build_omp_clause (where.lb->location, OMP_CLAUSE_ORDERED); + OMP_CLAUSE_ORDERED_EXPR (c) = NULL_TREE; omp_clauses = gfc_trans_add_clause (c, omp_clauses); } if (clauses->independent) @@ -3095,7 +3098,8 @@ gfc_trans_omp_critical (gfc_code *code) if (code->ext.omp_name != NULL) name = get_identifier (code->ext.omp_name); stmt = gfc_trans_code (code->block->next); - return build2_loc (input_location, OMP_CRITICAL, void_type_node, stmt, name); + return build3_loc (input_location, OMP_CRITICAL, void_type_node, stmt, + NULL_TREE, name); } typedef struct dovar_init_d { @@ -3486,7 +3490,8 @@ gfc_trans_omp_master (gfc_code *code) static tree gfc_trans_omp_ordered (gfc_code *code) { - return build1_v (OMP_ORDERED, gfc_trans_code (code->block->next)); + return build2_loc (input_location, OMP_ORDERED, void_type_node, + gfc_trans_code (code->block->next), NULL_TREE); } static tree |