https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127010
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Last reconfirmed| |2026-08-24
Status|UNCONFIRMED |NEW
--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
during RTL pass: expand
p/pickle/plugin.c: In function ‘pickle_encode’:
p/pickle/plugin.c:632:3: internal compiler error: in quick_grow_cleared, at
vec.h:1434
0x38378b1 internal_error(char const*, ...)
../../src/gcc-15-branch/gcc/diagnostic-global-context.cc:517
0x38076e7 fancy_abort(char const*, int, char const*)
../../src/gcc-15-branch/gcc/diagnostic.cc:1749
0x10ccbb5 vec<rtx_def*, va_heap, vl_embed>::quick_grow_cleared(unsigned int)
../../src/gcc-15-branch/gcc/vec.h:1434
0x10cc50c vec<rtx_def*, va_heap, vl_ptr>::safe_grow_cleared(unsigned int, bool)
../../src/gcc-15-branch/gcc/vec.h:2144
0x186dfe7 emit_case_dispatch_table
../../src/gcc-15-branch/gcc/stmt.cc:801
0x186eeaa expand_case(gswitch*)
../../src/gcc-15-branch/gcc/stmt.cc:1031
confirmed. Needs to be bisected what fixed it.
800 ncases = tree_to_shwi (range) + 1;
801 labelvec.safe_grow_cleared (ncases);
(gdb) p ncases
$1 = -2
and the range value is from the caller.