https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99241
--- Comment #4 from Alexander Lelyakin <alexander.lelyakin at googlemail dot com> --- The ICE in "install entity" can have different stacktrace. Stacktrace is same up to 'module_state::load_section' but then it has at least two different variants: ----1 /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header memory /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header streambuf /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header regex ---- In file included from /usr/local/include/c++/11.0.1/sstream:38, from /usr/local/include/c++/11.0.1/regex:46: /usr/local/include/c++/11.0.1/istream:58:42: internal compiler error: in install_entity, at cp/module.cc:7468 58 | class basic_istream : virtual public basic_ios<_CharT, _Traits> | ^~~~~~~~~ 0xa6f888 trees_in::install_entity(tree_node*) ../../gcc/gcc/cp/module.cc:7468 0xa77da6 trees_in::decl_value() ../../gcc/gcc/cp/module.cc:7980 0xa70767 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9153 0xa76d8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14811 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa7734f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18740 0xa715d0 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9664 0xa76a8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14717 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa77448 lazy_load_binding(unsigned int, tree_node*, tree_node*, binding_slot*) ../../gcc/gcc/cp/module.cc:18773 0xa8906e name_lookup::search_namespace_only(tree_node*) ../../gcc/gcc/cp/name-lookup.c:928 0xa8a6bb name_lookup::search_unqualified(tree_node*, cp_binding_level*) ../../gcc/gcc/cp/name-lookup.c:1158 0xa8d3c4 lookup_name_1 ../../gcc/gcc/cp/name-lookup.c:7804 0xa8d5aa lookup_name(tree_node*, LOOK_where, LOOK_want) ../../gcc/gcc/cp/name-lookup.c:7824 0xa9c282 lookup_name(tree_node*, LOOK_want) ../../gcc/gcc/cp/name-lookup.h:401 0xa9c282 cp_parser_lookup_name ../../gcc/gcc/cp/parser.c:29386 0xac4eef cp_parser_template_name ../../gcc/gcc/cp/parser.c:17711 0xac5432 cp_parser_template_id ../../gcc/gcc/cp/parser.c:17326 0xac5d4b cp_parser_class_name ../../gcc/gcc/cp/parser.c:24703 0xabd1fa cp_parser_qualifying_entity ../../gcc/gcc/cp/parser.c:7002 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. and compare: ----2 /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header array /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header stdexcept /usr/local/bin/g++ -std=c++20 -fmodules-ts -x c++-system-header valarray ---- In file included from /usr/local/include/c++/11.0.1/bits/hashtable.h:35, from /usr/local/include/c++/11.0.1/unordered_map:46, from /usr/local/include/c++/11.0.1/functional:61, from /usr/local/include/c++/11.0.1/pstl/glue_algorithm_defs.h:13, from /usr/local/include/c++/11.0.1/algorithm:74, from /usr/local/include/c++/11.0.1/valarray:38: /usr/local/include/c++/11.0.1/bits/hashtable_policy.h:63:51: internal compiler error: in install_entity, at cp/module.cc:7468 63 | inline typename std::iterator_traits<_Iterator>::difference_type | ^ 0xa6f888 trees_in::install_entity(tree_node*) ../../gcc/gcc/cp/module.cc:7468 0xa77da6 trees_in::decl_value() ../../gcc/gcc/cp/module.cc:7980 0xa70767 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9153 0xa76d8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14811 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa7734f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18740 0xa715d0 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9664 0xa76a8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14717 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa7734f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18740 0xa715d0 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9664 0xa76a8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14717 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa7734f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18740 0xa715d0 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9664 0xa76a8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14717 0xa7728d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18082 0xa7734f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18740 0xa715d0 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9664 0xa76a8b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14717 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.