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

            Bug ID: 93662
           Summary: [10 Regression] ICE in tree_to_poly_int64, at
                    tree.c:2976
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Changed between 20191103 (error) and 20191110 (ICE) at -O1+ :
(for some reason much later than pr93661 ...)


$ cat z1.f90
subroutine s
   type t
      integer, allocatable :: a
      character(huge(1_8)) :: c
   end type
   class(t), allocatable :: x
   allocate(t :: x)
end


$ cat z2.f90
subroutine s
   type t
      integer, allocatable :: a
      character(2_8**60) :: c
   end type
   class(t), allocatable :: x
   allocate(t :: x)
end


$ gfortran-10-20200209 -c z1.f90 -O2
z1.f90:1:12:

    1 | subroutine s
      |            1
Warning: size of '__def_init_s_T' 9223372036854775816 bytes exceeds maximum
object size 9223372036854775807 [-Wlarger-than=]
z1.f90:7:0:

    7 |    allocate(t :: x)
      |
Warning: size of 't.6' 9223372036854775816 bytes exceeds maximum object size
9223372036854775807 [-Wlarger-than=]
f951: Warning: size of '<anonymous>' 9223372036854775816 bytes exceeds maximum
object size 9223372036854775807 [-Wlarger-than=]
f951: Warning: size of '<anonymous>' 9223372036854775816 bytes exceeds maximum
object size 9223372036854775807 [-Wlarger-than=]
during GIMPLE pass: esra
z1.f90:8:0:

    8 | end
      |
internal compiler error: in tree_to_poly_int64, at tree.c:2976
0x10403e2 tree_to_poly_int64(tree_node const*)
        ../../gcc/tree.c:2976
0xe45ed1 get_access_for_expr
        ../../gcc/tree-sra.c:3608
0xe4a7cb sra_modify_assign
        ../../gcc/tree-sra.c:4002
0xe4a7cb sra_modify_function_body
        ../../gcc/tree-sra.c:4325
0xe4a7cb perform_intra_sra
        ../../gcc/tree-sra.c:4435

Reply via email to