[Bug fortran/100154] [9/10/11 Regression] ICE in gfc_conv_procedure_call, at fortran/trans-expr.c:6131

anlauf at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Apr 20 21:21:10 GMT 2021


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

--- Comment #2 from anlauf at gcc dot gnu.org ---
Untested patch:

diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c
index 82db8e4e1b2..df4409840d5 100644
--- a/gcc/fortran/check.c
+++ b/gcc/fortran/check.c
@@ -5730,6 +5731,15 @@ gfc_check_fgetput_sub (gfc_expr *c, gfc_expr *status)
   if (!kind_value_check (c, 0, gfc_default_character_kind))
     return false;

+  if (c->expr_type != EXPR_VARIABLE
+      && strcmp (gfc_current_intrinsic, "fget") == 0)
+    {
+      gfc_error ("%qs argument of %qs intrinsic at %L must be a variable",
+                gfc_current_intrinsic_arg[0]->name,
+                gfc_current_intrinsic, &c->where);
+      return false;
+    }
+
   if (status == NULL)
     return true;


More information about the Gcc-bugs mailing list