https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99484
--- Comment #1 from Alexander Lelyakin <alexander.lelyakin at googlemail dot com> --- In current version 20210310 I have seen another, but very similar error message: g++ -std=c++20 -fmodules-ts -x c++-system-header memory_resource g++ -std=c++20 -fmodules-ts -x c++-system-header thread g++ -std=c++20 -fmodules-ts -x c++-system-header version g++ -std=c++20 -fmodules-ts -x c++-system-header array g++ -std=c++20 -fmodules-ts -x c++-system-header latch g++ -std=c++20 -fmodules-ts -x c++-system-header syncstream g++ -std=c++20 -fmodules-ts -x c++-system-header cstddef g++ -std=c++20 -fmodules-ts -x c++-system-header type_traits g++ -std=c++20 -fmodules-ts -x c++-system-header list g++ -std=c++20 -fmodules-ts -x c++-system-header unordered_map ---- In module /usr/local/include/c++/11.0.1/type_traits, imported at /usr/local/include/c++/11.0.1/unordered_map:38: /usr/local/include/c++/11.0.1/type_traits: In instantiation of ‘struct std::is_copy_assignable<bool>’: /usr/local/include/c++/11.0.1/type_traits:138:12: required from ‘struct std::__and_<std::is_copy_assignable<bool>, std::is_copy_assignable<long unsigned int> >’ /usr/local/include/c++/11.0.1/bits/stl_pair.h:390:7: required from ‘struct std::pair<bool, long unsigned int>’ /usr/local/include/c++/11.0.1/bits/hashtable_policy.h:577:5: required from here /usr/local/include/c++/11.0.1/type_traits:1057:12: internal compiler error: same canonical type node for different types ‘void’ and ‘std::__void_t<_Tp&>’ 1057 | struct is_copy_assignable | ^~~~~~~~~~~~~~~~~~ 0xb7f8dd comptypes(tree_node*, tree_node*, int) ../../gcc/gcc/cp/typeck.c:1554 0xae4bff template_args_equal(tree_node*, tree_node*, bool) ../../gcc/gcc/cp/pt.c:9207 0xae4758 template_args_equal(tree_node*, tree_node*, bool) ../../gcc/gcc/cp/pt.c:9170 0xae4758 comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**, bool) ../../gcc/gcc/cp/pt.c:9254 0xae4758 comp_template_args(tree_node*, tree_node*, tree_node**, tree_node**, bool) ../../gcc/gcc/cp/pt.c:9234 0xaee073 spec_hasher::equal(spec_entry*, spec_entry*) ../../gcc/gcc/cp/pt.c:1725 0xb3400e hash_table<spec_hasher, false, xcallocator>::find_slot_with_hash(spec_entry* const&, unsigned int, insert_option) ../../gcc/gcc/hash-table.h:981 0xaf101b add_mergeable_specialization(bool, spec_entry*, tree_node*, unsigned int) ../../gcc/gcc/cp/pt.c:30018 0xa6ef5f trees_in::decl_value() ../../gcc/gcc/cp/module.cc:8068 0xa67017 trees_in::tree_node(bool) ../../gcc/gcc/cp/module.cc:9174 0xa6d66b module_state::read_cluster(unsigned int) ../../gcc/gcc/cp/module.cc:14858 0xa6db6d module_state::load_section(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18129 0xa6dc2f module_state::lazy_load(unsigned int, binding_slot*) ../../gcc/gcc/cp/module.cc:18783 0xa70e67 lazy_load_pendings(tree_node*) ../../gcc/gcc/cp/module.cc:18876 0xb2045f lookup_template_class_1 ../../gcc/gcc/cp/pt.c:9799 0xb227f6 lookup_template_class(tree_node*, tree_node*, tree_node*, tree_node*, int, int) ../../gcc/gcc/cp/pt.c:10237 0xb227f6 tsubst_aggr_type ../../gcc/gcc/cp/pt.c:13572 0xaf87ad tsubst_qualified_id ../../gcc/gcc/cp/pt.c:16365 0xafab79 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) ../../gcc/gcc/cp/pt.c:19865 0xb04508 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) ../../gcc/gcc/cp/pt.c:19115 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. ---- g++ (GCC) 11.0.1 20210310 (experimental) Copyright (C) 2021 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.