+2008-03-23 Tobias Schlüter <tobi@gcc.gnu.org>
+
+ * trans.h: Use fold_build in build1_v, build2_v and build3_v
+ macros.
+ * trans-openmp.c (gfc_trans_omp_critical, gfc_trans_omp_single):
+ Don't use build2_v macro.
+
2008-03-19 Daniel Franke <franke.daniel@gmail.com>
PR fortran/35152
if (code->ext.omp_name != NULL)
name = get_identifier (code->ext.omp_name);
stmt = gfc_trans_code (code->block->next);
- return build2_v (OMP_CRITICAL, stmt, name);
+ return build2 (OMP_CRITICAL, void_type_node, stmt, name);
}
static tree
{
tree omp_clauses = gfc_trans_omp_clauses (NULL, clauses, code->loc);
tree stmt = gfc_trans_omp_code (code->block->next, true);
- stmt = build2_v (OMP_SINGLE, stmt, omp_clauses);
+ stmt = build2 (OMP_SINGLE, void_type_node, stmt, omp_clauses);
return stmt;
}
(TYPE_LANG_SPECIFIC(node)->dataptr_type)
/* Build an expression with void type. */
-#define build1_v(code, arg) build1(code, void_type_node, arg)
-#define build2_v(code, arg1, arg2) build2(code, void_type_node, \
- arg1, arg2)
-#define build3_v(code, arg1, arg2, arg3) build3(code, void_type_node, \
- arg1, arg2, arg3)
+#define build1_v(code, arg) fold_build1(code, void_type_node, arg)
+#define build2_v(code, arg1, arg2) fold_build2(code, void_type_node, \
+ arg1, arg2)
+#define build3_v(code, arg1, arg2, arg3) fold_build3(code, void_type_node, \
+ arg1, arg2, arg3)
#define build4_v(code, arg1, arg2, arg3, arg4) build4(code, void_type_node, \
arg1, arg2, arg3, arg4)