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

            Bug ID: 107349
           Summary: [13 Regression] ICE in get_va_copy_arg, at
                    analyzer/varargs.cc:175
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: acoplan at gcc dot gnu.org
  Target Milestone: ---

The following fails on aarch64:

$ cat t.c
void f() {
  __builtin_va_list x,y;
  __builtin_va_copy(x,y);
}
$ gcc/xgcc -B gcc -c t.c -fanalyzer
during IPA pass: analyzer
t.c: In function ‘f’:
t.c:3:3: internal compiler error: in get_va_copy_arg, at
analyzer/varargs.cc:175
    3 |   __builtin_va_copy(x,y);
      |   ^~~~~~~~~~~~~~~~~~~~~~
0x13d26cb get_va_copy_arg
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/varargs.cc:175
0x13d3a47 ana::region_model::impl_call_va_copy(ana::call_details const&)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/varargs.cc:696
0x136742b ana::region_model::on_call_pre(gcall const*,
ana::region_model_context*, bool*)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/region-model.cc:2246
0x13707f7 ana::region_model::on_stmt_pre(gimple const*, bool*, bool*,
ana::region_model_context*)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/region-model.cc:1262
0x133706f ana::exploded_node::on_stmt(ana::exploded_graph&, ana::supernode
const*, gimple const*, ana::program_state*, ana::uncertainty_t*,
ana::path_context*)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/engine.cc:1447
0x1339a2b ana::exploded_graph::process_node(ana::exploded_node*)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/engine.cc:4034
0x133a6a3 ana::exploded_graph::process_worklist()
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/engine.cc:3436
0x133c847 ana::impl_run_checkers(ana::logger*)
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/engine.cc:6084
0x133dd73 ana::run_checkers()
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/engine.cc:6158
0x132ce5b execute
        /home/alecop01/toolchain/src/gcc/gcc/analyzer/analyzer-pass.cc:86
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

this was reduced from the analyzer testsuite where I see the following tests
failing due to this:

gcc.dg/analyzer/stdarg-1.c
gcc.dg/analyzer/call-summaries-2.c
gcc.dg/analyzer/stdarg-2.c

I think this might have started with
r13-3390-gebe87edadc4a3f15a6a0d0c1d4a198e0ea37d8b5

Reply via email to