------- Comment #7 from fxcoudert at gcc dot gnu dot org 2008-02-15 16:21 ------- (In reply to comment #6) > That is, the ELSE branch needs to be fixed as well; the fix was only for rank > == 0.
OK, here is an updated patch: Index: trans-expr.c =================================================================== --- trans-expr.c (revision 132257) +++ trans-expr.c (working copy) @@ -2264,6 +2264,13 @@ gfc_conv_array_parameter (se, arg->expr, argss, f); } + /* TODO -- the following two lines shouldn't be necessary, but + they're removed a bug is exposed later in the codepath. + This is workaround was thus introduced, but will have to be + removed; please see PR 35150 for details about the issue. */ + se->expr = convert (pvoid_type_node, se->expr); + se->expr = gfc_evaluate_now (se->expr, &se->pre); + return 0; } else if (sym->intmod_sym_id == ISOCBINDING_FUNLOC) I've started regtesting and will submit it for review afterwards. -- fxcoudert at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |fxcoudert at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Last reconfirmed|2008-02-14 12:42:39 |2008-02-15 16:21:02 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35150