Skip to content
Snippets Groups Projects
Commit 6ff54cc0 authored by Nathaniel Shead's avatar Nathaniel Shead
Browse files

c++: Handle partial specialisations in GMF [PR113405]


Currently, when exporting names from the GMF, or within header modules,
for a set of constrained partial specialisations we only emit the first
one. This is because the 'type_specialization' list only includes a
single specialization per template+argument list; constraints are not
considered here.

The existing code uses a separate 'partial_specializations' list to
track this instead, but currently it's only used for declarations in the
module purview. This patch makes use of this list for all declarations.

	PR c++/113405

gcc/cp/ChangeLog:

	* module.cc (set_defining_module): Track partial specialisations
	for all declarations.

gcc/testsuite/ChangeLog:

	* g++.dg/modules/concept-9.h: New test.
	* g++.dg/modules/concept-9_a.C: New test.
	* g++.dg/modules/concept-9_b.C: New test.
	* g++.dg/modules/concept-10_a.H: New test.
	* g++.dg/modules/concept-10_b.C: New test.

Signed-off-by: default avatarNathaniel Shead <nathanieloshead@gmail.com>
parent b433a6f5
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment