https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114630
--- Comment #2 from Nathaniel Shead <nshead at gcc dot gnu.org> --- Created attachment 57919 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=57919&action=edit untested workaround It looks like r14-8408 just exposed a pre-existing problem by no longer always discarding emission of partial specialisations when declared in the GMF. But we can get the same result without that change by declaring them in the module purview under `extern "C++"`. The attached patch fixes the issue with GM partial specialisations always being emitted, which fixes the original test case but doesn't solve the underlying issue: as can be shown by adding `formatter<int, char> f;` into the module purview of `modA` and `modB` to make the declarations reachable again.