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

            Bug ID: 96763
           Summary: [11 Regression] ICE in get_subregion_within_ctor, at
                    analyzer/store.cc:379
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: powerpc-*-linux-gnu

g++-11.0.0-alpha20200823 snapshot (g:87c753ac241f25d222d46ba1ac66ceba89d6a200)
ICEs when compiling the following testcase, reduced from
gcc/testsuite/g++.dg/cpp2a/nontype-class16.C, w/ -fanalyzer:

struct c0;

struct md {
  int c0::*jj[2];
};

void
n0 ()
{
  md{};
}

% powerpc-e300c3-linux-gnu-g++-11.0.0 -fanalyzer -c a3ufwiij.C
during IPA pass: analyzer
a3ufwiij.C: In function 'void n0()':
a3ufwiij.C:10:3: internal compiler error: in get_subregion_within_ctor, at
analyzer/store.cc:379
   10 |   md{};
      |   ^~~~
0x7db089 get_subregion_within_ctor
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/store.cc:379
0x7db089 ana::binding_map::apply_ctor_to_region(ana::region const*, tree_node*,
ana::region_model_manager*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/store.cc:423
0x13f7bb5 ana::binding_map::apply_ctor_to_region(ana::region const*,
tree_node*, ana::region_model_manager*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/store.cc:425
0x13c4f7a ana::decl_region::get_svalue_for_constructor(tree_node*,
ana::region_model_manager*) const
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region.cc:907
0x13c9f54 ana::region_model::get_store_value(ana::region const*) const
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model.cc:1284
0x13cbca3 ana::region_model::get_rvalue(ana::path_var,
ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model.cc:1190
0x13cc0a7 ana::region_model::on_assignment(gassign const*,
ana::region_model_context*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model.cc:562
0x13af66a ana::exploded_node::on_stmt(ana::exploded_graph&, ana::supernode
const*, gimple const*, ana::program_state*) const
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:1029
0x13b08a5 ana::exploded_graph::process_node(ana::exploded_node*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:2526
0x13b1102 ana::exploded_graph::process_worklist()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:2341
0x13b31e4 ana::impl_run_checkers(ana::logger*)
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:4107
0x13b3e91 ana::run_checkers()
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:4175
0x13a8a68 execute
       
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/analyzer-pass.cc:84

Reply via email to