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

            Bug ID: 99204
           Summary: ICE in fold_read_from_constant_string, at
                    fold-const.c:15441
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Affects versions down to at least r5 at -O1+ :
(gives an error with integer, parameter :: ...)


$ cat z1.f90
program p
   character :: c
   integer :: i = -12345678
   c = 'abc'(i:i)
   print *, c
end


$ gfortran-11-20210221 -c z1.f90 -O2
during GIMPLE pass: ccp
z1.f90:1:9:

    1 | program p
      |         ^
internal compiler error: Segmentation fault
0xc060ef crash_signal
        ../../gcc/toplev.c:327
0x945af6 poly_int<1u, long>::poly_int<char>(char const&)
        ../../gcc/poly-int.h:670
0x945af6 fold_read_from_constant_string(tree_node*)
        ../../gcc/fold-const.c:15441
0x979796 fold_const_aggregate_ref_1(tree_node*, tree_node* (*)(tree_node*))
        ../../gcc/gimple-fold.c:7981
0x97a9d9 fold_const_aggregate_ref(tree_node*)
        ../../gcc/gimple-fold.c:8136
0x97a9d9 maybe_fold_reference
        ../../gcc/gimple-fold.c:334
0x980f84 fold_gimple_assign
        ../../gcc/gimple-fold.c:366
0x980f84 fold_stmt_1
        ../../gcc/gimple-fold.c:6077
0xd709b3 substitute_and_fold_dom_walker::before_dom_children(basic_block_def*)
        ../../gcc/tree-ssa-propagate.c:1149
0x148d1b4 dom_walker::walk(basic_block_def*)
        ../../gcc/domwalk.c:309
0xd6fdf5 substitute_and_fold_engine::substitute_and_fold(basic_block_def*)
        ../../gcc/tree-ssa-propagate.c:1283
0xce231b ccp_finalize
        ../../gcc/tree-ssa-ccp.c:1022
0xce231b do_ssa_ccp
        ../../gcc/tree-ssa-ccp.c:2579
0xce231b execute
        ../../gcc/tree-ssa-ccp.c:2622

Reply via email to