https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125208
--- Comment #8 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Created attachment 64408 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=64408&action=edit reduced.C Reduced to ~2000 lines after ~15 hours of cvise. Doesn't ICE with values lower than --param ggc-min-expand=923 --param ggc-min-heapsize=256. 0x321d8e8 internal_error(char const*, ...) /home/mpolacek/src/gcc/gcc/diagnostic-global-context.cc:787 0x322c1f5 fancy_abort(char const*, int, char const*) /home/mpolacek/src/gcc/gcc/diagnostics/context.cc:1813 0x90a93f cp_tree_equal(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/tree.cc:4562 0x90a745 cp_tree_equal(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/tree.cc:4522 0x7dc6c7 template_args_equal(tree_node*, tree_node*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:9722 0x7dc7e9 comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**) /home/mpolacek/src/gcc/gcc/cp/pt.cc:9748 0x7b737a spec_hasher::equal(spec_entry*, spec_entry*) /home/mpolacek/src/gcc/gcc/cp/pt.cc:1713 0x8636e9 hash_table<spec_hasher, false, xcallocator>::find_with_hash(spec_entry* const&, unsigned int) /home/mpolacek/src/gcc/gcc/hash-table.h:999 0x861e4b hash_table<spec_hasher, false, xcallocator>::find(spec_entry* const&) /home/mpolacek/src/gcc/gcc/hash-table.h:430 0x7dedbe lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*, int) /home/mpolacek/src/gcc/gcc/cp/pt.cc:10436 0x880cd8 eval_can_substitute /home/mpolacek/src/gcc/gcc/cp/reflect.cc:5503 0x880ea0 eval_substitute /home/mpolacek/src/gcc/gcc/cp/reflect.cc:5553 0x88fd9a process_metafunction(constexpr_ctx const*, tree_node*, tree_node*, bool*, bool*, tree_node**) /home/mpolacek/src/gcc/gcc/cp/reflect.cc:8195 0x49268f cxx_eval_call_expression /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:4036 0x4aa596 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*, value_cat, bool*, bool*, tree_node**) /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:9401 0x4ab11e cxx_eval_constant_expression(constexpr_ctx const*, tree_node*, value_cat, bool*, bool*, tree_node**) /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:9538 0x4ac588 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*, value_cat, bool*, bool*, tree_node**) /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:9828 0x4ad272 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*, value_cat, bool*, bool*, tree_node**) /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:10123 0x48dff0 cxx_bind_parameters_in_call /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:2935 0x493b1d cxx_eval_call_expression /home/mpolacek/src/gcc/gcc/cp/constexpr.cc:4256
