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

G. Steinmetz <gs...@t-online.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |gs...@t-online.de

--- Comment #5 from G. Steinmetz <gs...@t-online.de> ---

Some presumably related examples, where z1.f90 gives an ICE,
while minimal less complex examples z2.f90 and z3.f90 compile :


$ cat z1.f90
program p
   type t
      procedure(g), pointer, nopass :: f
   end type
   type(t) :: a(1)
   a(1)%f => g
contains
   function g() result(z)
      real :: z(2,2)
   end
end


$ cat z2.f90
program p
   type t
      procedure(g), pointer, nopass :: f
   end type
   type(t) :: a
   a%f => g
contains
   function g() result(z)
      real :: z(2,2)
   end
end


$ cat z3.f90
program p
   type t
      procedure(g), pointer, nopass :: f
   end type
   type(t) :: a(1)
   a(1)%f => g
contains
   function g() result(z)
      real :: z(2)
   end
end


$ gfortran-11-20210418 -c z1.f90
f951: internal compiler error: spec_dimen_size(): Bad dimension
0x686b09 gfc_report_diagnostic
        ../../gcc/fortran/error.c:782
0x68822a gfc_internal_error(char const*, ...)
        ../../gcc/fortran/error.c:1402
0x65705e spec_dimen_size(gfc_array_spec*, int, __mpz_struct (*) [1])
        ../../gcc/fortran/array.c:2300
0x6f299f expression_shape
        ../../gcc/fortran/resolve.c:5439
0x6f299f gfc_expression_rank(gfc_expr*)
        ../../gcc/fortran/resolve.c:5513
0x6f4a6e resolve_variable
        ../../gcc/fortran/resolve.c:5943
0x6f4a6e gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.c:7107
0x6fc384 gfc_resolve_expr(gfc_expr*)
        ../../gcc/fortran/resolve.c:7072
0x6fc384 gfc_resolve_code(gfc_code*, gfc_namespace*)
        ../../gcc/fortran/resolve.c:11820
0x6fd997 resolve_codes
        ../../gcc/fortran/resolve.c:17396
0x6fda5e gfc_resolve(gfc_namespace*)
        ../../gcc/fortran/resolve.c:17431
0x6e5fb4 resolve_all_program_units
        ../../gcc/fortran/parse.c:6290
0x6e5fb4 gfc_parse_file()
        ../../gcc/fortran/parse.c:6542
0x7329cf gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:212

Reply via email to