https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98969
Bug ID: 98969
Summary: [11 Regression] ICE: Segmentation fault (in
print_mem_ref)
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Keywords: ice-on-invalid-code
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
gcc-11.0.0-alpha20210131 snapshot (g:98342bdd2b7085c9e7e4c9fbb07c3917a0013515)
ICEs when compiling the following snippet by either C or C++ compiler w/
-fanalyzer:
struct TYPE_14__ {
char *expr;
};
char *
strdup (const char *);
void
_round_2_cb (long int _round_2_cb_n_0)
{
struct TYPE_14__ *bb = (struct TYPE_14__ *) _round_2_cb_n_0;
bb->expr = strdup ((const char *) 0);
}
% gcc-11.0.0 -fanalyzer -c e6r6hdiy.c
during IPA pass: analyzer
e6r6hdiy.c:14:1: internal compiler error: Segmentation fault
14 | }
| ^
0xe0343f crash_signal
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/toplev.c:327
0x8dac60 print_mem_ref
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/c-family/c-pretty-print.c:2006
0x8d7ffc c_pretty_printer::postfix_expression(tree_node*)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/c-family/c-pretty-print.c:1696
0x83b34d c_tree_printer
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/c/c-objc-common.c:317
0x83b34d c_tree_printer
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/c/c-objc-common.c:254
0x1a01945 pp_format(pretty_printer*, text_info*)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/pretty-print.c:1475
0x11ab18b ana::evdesc::event_desc::formatted_print(char const*, ...) const
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/pending-diagnostic.cc:64
0x1998e16 ana::warning_event::get_desc(bool) const
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/checker-path.cc:885
0x1998692 ana::checker_event::prepare_for_emission(ana::checker_path*,
ana::pending_diagnostic*, diagnostic_event_id_t)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/checker-path.cc:149
0x19a9159 ana::checker_path::prepare_for_emission(ana::pending_diagnostic*)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/checker-path.h:559
0x19a9159 ana::diagnostic_manager::emit_saved_diagnostic(ana::exploded_graph
const&, ana::saved_diagnostic const&, ana::exploded_path const&, gimple const*,
int)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/diagnostic-manager.cc:668
0x19ab831 ana::dedupe_winners::emit_best(ana::diagnostic_manager*,
ana::exploded_graph const&)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/diagnostic-manager.cc:569
0x19a956a ana::diagnostic_manager::emit_saved_diagnostics(ana::exploded_graph
const&)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/diagnostic-manager.cc:622
0x11a1602 ana::impl_run_checkers(ana::logger*)
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/engine.cc:4780
0x11a2426 ana::run_checkers()
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/engine.cc:4837
0x11940f8 execute
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20210131/work/gcc-11-20210131/gcc/analyzer/analyzer-pass.cc:87