https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92208

--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> ---
"fixed" by the following patch:
* The LHS [se->string_length] is the string length represented as
  MAX_EXPR <(integer(kind=8)) D.4012, 0>
* The RHS [expr->ts.u.cl->backend_decl] is ..__result

The question is now: how to do this properly?

--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -8051,3 +8051,3 @@ gfc_conv_array_parameter (gfc_se * se, gfc_expr * expr,
bool g77,
        }
-      if (expr->ts.type == BT_CHARACTER)
+      if (false && expr->ts.type == BT_CHARACTER)
        se->string_length = expr->ts.u.cl->backend_decl;

Reply via email to