https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99285
--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Nathan Sidwell <nat...@gcc.gnu.org>: https://gcc.gnu.org/g:ded6a1953dd7f43229c44e5d0d17c264338a3f4c commit r11-7557-gded6a1953dd7f43229c44e5d0d17c264338a3f4c Author: Nathan Sidwell <nat...@acm.org> Date: Mon Mar 8 10:01:21 2021 -0800 c++: Incorrect specialization hash table [PR 99285] Class template partial specializations need to be in the specialization hash, but not all of them. This defers adding streamed-in entities to the hash table, in the same way I deferred adding the instantiation and specialization lists for 99170. PR c++/99285 gcc/cp/ * cp-tree.h (match_mergeable_specialization) (add_mergeable_specialization): Adjust parms. * module.cc (trees_in::decl_value): Adjust add_mergeable_specialization calls. (trees_out::key_mergeable): Adjust match_mergeable_specialization calls. (specialization_add): Likewise. * pt.c (match_mergeable_specialization): Do not insert. (add_mergeable_specialization): Add to hash table here. gcc/testsuite/ * g++.dg/modules/pr99285_a.H: New. * g++.dg/modules/pr99285_b.H: New.