https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113119
--- Comment #2 from Zdenek Sojka <zsojka at seznam dot cz> --- Created attachment 56925 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=56925&action=edit slightly less reduced testcase, ICEing elsewhere The original testcase was ICEing at a different place, as does this testcase: $ x86_64-pc-linux-gnu-gcc -O testcase.c during GIMPLE pass: bitintlower testcase.c: In function 'foo': testcase.c:8:1: internal compiler error: in operator[], at vec.h:910 8 | foo(_BitInt(4058) d) | ^~~ 0x8a0a88 vec<tree_node*, va_gc, vl_embed>::operator[](unsigned int) /repo/gcc-trunk/gcc/vec.h:910 0x8a0c6e vec<equiv_chain*, va_heap, vl_embed>::operator[](unsigned int) /repo/gcc-trunk/gcc/value-relation.cc:736 0x8a0c6e vec<equiv_chain*, va_heap, vl_ptr>::operator[](unsigned int) /repo/gcc-trunk/gcc/vec.h:1599 0x8a0c6e equiv_oracle::add_equiv_to_block(basic_block_def*, bitmap_head*) /repo/gcc-trunk/gcc/value-relation.cc:721 0x185e5c2 equiv_oracle::register_relation(basic_block_def*, relation_kind_t, tree_node*, tree_node*) /repo/gcc-trunk/gcc/value-relation.cc:675 0x26597e9 fold_using_range::range_of_range_op(vrange&, gimple_range_op_handler&, fur_source&) /repo/gcc-trunk/gcc/gimple-range-fold.cc:687 0x2659bf2 fold_using_range::fold_stmt(vrange&, gimple*, fur_source&, tree_node*) /repo/gcc-trunk/gcc/gimple-range-fold.cc:602 0x2641c7e gimple_ranger::fold_range_internal(vrange&, gimple*, tree_node*) /repo/gcc-trunk/gcc/gimple-range.cc:265 0x2641c7e gimple_ranger::range_of_stmt(vrange&, gimple*, tree_node*) /repo/gcc-trunk/gcc/gimple-range.cc:326 0x264597a gimple_ranger::range_of_expr(vrange&, tree_node*, gimple*) /repo/gcc-trunk/gcc/gimple-range.cc:134 0x261e312 range_to_prec /repo/gcc-trunk/gcc/gimple-lower-bitint.cc:1980 0x2620acb handle_operand_addr /repo/gcc-trunk/gcc/gimple-lower-bitint.cc:2025 0x26217e7 lower_muldiv_stmt /repo/gcc-trunk/gcc/gimple-lower-bitint.cc:3365 0x2635599 gimple_lower_bitint /repo/gcc-trunk/gcc/gimple-lower-bitint.cc:6490 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.