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

            Bug ID: 93777
           Summary: ICE in maybe_cast_1, at analyzer/region-model.cc:5064
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

gfortran-10.0.1-alpha20200216 snapshot
(g:6e37e49616d429c5d922324ebd72ae95f12a079f) ICEs when compiling the following
testcase, reduced from gcc/testsuite/gfortran.dg/block_13.f08, w/ -fanalyzer:

program cb
  implicit none
  type :: jn
     real, allocatable :: ie
     character(len = :), allocatable :: e5
  end type jn
  real, parameter :: gm = 5.0

  block
    type(jn) :: r2

    r2 = jn (gm, "")
    call vz (r2%ie, gm)
  end block
contains
  subroutine vz (arg1, arg2)
    real :: arg1, arg2
    if (arg1 .ne. arg2) STOP 1
  end subroutine vz
end program cb

% powerpc-e300c3-linux-gnu-gfortran-10.0.1 -fanalyzer -c mouy3agw.f08
during IPA pass: analyzer
mouy3agw.f08:13:0:

   13 |     call vz (r2%ie, gm)
      | 
internal compiler error: in maybe_cast_1, at analyzer/region-model.cc:5064
0x74b5ef ana::region_model::maybe_cast_1(tree_node*, ana::svalue_id)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:5064
0x1264da0 ana::region_model::maybe_cast(tree_node*, ana::svalue_id,
ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:5085
0x1267671 ana::region::set_value(ana::region_model&, ana::region_id,
ana::svalue_id, ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:1012
0x126cd35 ana::root_region::push_frame(ana::region_model*, function*,
vec<ana::svalue_id, va_heap, vl_ptr>*, ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:2894
0x1270ce6 ana::region_model::update_for_call_superedge(ana::call_superedge
const&, ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:5740
0x1270e47 ana::region_model::maybe_update_for_edge(ana::superedge const&,
gimple const*, ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/region-model.cc:5678
0x125aba3 ana::program_state::on_edge(ana::exploded_graph&, ana::exploded_node
const&, ana::superedge const*, ana::state_change*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/program-state.cc:781
0x124726b ana::exploded_node::on_edge(ana::exploded_graph&, ana::superedge
const*, ana::program_point*, ana::program_state*, ana::state_change*) const
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/engine.cc:1104
0x124d7e0 ana::exploded_graph::process_node(ana::exploded_node*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/engine.cc:2516
0x124ddd2 ana::exploded_graph::process_worklist()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/engine.cc:2267
0x124f94a ana::impl_run_checkers(ana::logger*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/engine.cc:3627
0x1250f11 ana::run_checkers()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/engine.cc:3684
0x1245568 execute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-10.0.1_alpha20200216/work/gcc-10-20200216/gcc/analyzer/analyzer-pass.cc:84

(While my target here is powerpc, the ICE is not target-specific.)

Reply via email to