[Bug fortran/84615] [8 Regression] Executable Segfault for some tests compiled with -m32 after r256284
jb at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Mar 20 08:59:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84615
--- Comment #16 from Janne Blomqvist <jb at gcc dot gnu.org> ---
The following patch regtests cleanly on x86_64-pc-linux-gnu, i686-pc-linux-gnu,
and successfully passes the #c5 testcase on i686 with -fdefault-real8, and the
#c8 testcase on i686 (I didn't test other testcases).
diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c
index 54bda1d..bf19ac3 100644
--- a/gcc/fortran/trans-expr.c
+++ b/gcc/fortran/trans-expr.c
@@ -5974,8 +5974,9 @@ gfc_conv_procedure_call (gfc_se * se, gfc_symbol * sym,
gfc_add_block_to_block (&se->post, &parmse.post);
tmp = parmse.expr;
tmp = fold_build2_loc (input_location, MAX_EXPR,
- TREE_TYPE (tmp), tmp,
- build_zero_cst (TREE_TYPE (tmp)));
+ gfc_charlen_type_node,
+ fold_convert (gfc_charlen_type_node, tmp),
+ build_zero_cst (gfc_charlen_type_node));
cl.backend_decl = tmp;
}
Dominique, can you check whether it also fixes the other -fdefault-real-8 -m32
issues caused by r256284?
More information about the Gcc-bugs
mailing list