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

            Bug ID: 100193
           Summary: [9/10/11/12 Regression] ICE in
                    alloc_scalar_allocatable_for_assignment, at
                    fortran/trans-expr.c:10837
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Started with r6 (z%g= is invalid, r5 compiles it) :


$ cat z1.f90
module m
   implicit none
   type t
      procedure(f), pointer, nopass :: g
   end type
contains
   function f()
      character(:), allocatable :: f
      f = 'abc'
   end
   subroutine s
      type(t) :: z
      z%g = 'x'
      if ( z%g() /= 'abc' ) stop
   end
end
program p
   use m
   implicit none
   call s
end


$ gfortran-5 -c z1.f90
$
$ gfortran-11-20210418 -c z1.f90
z1.f90:13:15:

   13 |       z%g = 'x'
      |               1
internal compiler error: Segmentation fault
0xc0b22f crash_signal
        ../../gcc/toplev.c:327
0x778bf2 alloc_scalar_allocatable_for_assignment
        ../../gcc/fortran/trans-expr.c:10837
0x778bf2 gfc_trans_assignment_1
        ../../gcc/fortran/trans-expr.c:11497
0x739707 trans_code
        ../../gcc/fortran/trans.c:1932
0x75fd34 gfc_generate_function_code(gfc_namespace*)
        ../../gcc/fortran/trans-decl.c:6884
0x739f79 gfc_generate_module_code(gfc_namespace*)
        ../../gcc/fortran/trans.c:2332
0x6e61b1 translate_all_program_units
        ../../gcc/fortran/parse.c:6338
0x6e61b1 gfc_parse_file()
        ../../gcc/fortran/parse.c:6620
0x7329cf gfc_be_parse_file
        ../../gcc/fortran/f95-lang.c:212

Reply via email to