File tree Expand file tree Collapse file tree 3 files changed +15
-2
lines changed Expand file tree Collapse file tree 3 files changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -97,8 +97,15 @@ private void AddSpecialization(ClassTemplateSpecialization specialization)
9797 private void CleanSpecializations ( Class template )
9898 {
9999 template . Specializations . RemoveAll ( s =>
100- s . SpecializationKind == TemplateSpecializationKind . Undeclared ||
101- ( ! specializations . Contains ( s ) && ! internalSpecializations . Contains ( s ) ) ) ;
100+ {
101+ if ( s . SpecializationKind == TemplateSpecializationKind . Undeclared ||
102+ ( ! specializations . Contains ( s ) && ! internalSpecializations . Contains ( s ) ) )
103+ {
104+ s . ExplicitlyIgnore ( ) ;
105+ return true ;
106+ }
107+ return false ;
108+ } ) ;
102109
103110 foreach ( var specialization in template . Specializations . Where (
104111 s => s is ClassTemplatePartialSpecialization ) )
Original file line number Diff line number Diff line change @@ -70,6 +70,11 @@ DerivedFromExternalSpecialization::~DerivedFromExternalSpecialization()
7070{
7171}
7272
73+ TemplateWithIndependentFields<Base3> DerivedFromExternalSpecialization::returnExternalSpecialization ()
74+ {
75+ return TemplateWithIndependentFields<Base3>();
76+ }
77+
7378HasVirtualInDependency::HasVirtualInDependency ()
7479{
7580}
Original file line number Diff line number Diff line change @@ -76,6 +76,7 @@ class DLL_API DerivedFromExternalSpecialization : public TemplateWithIndependent
7676public:
7777 DerivedFromExternalSpecialization ();
7878 ~DerivedFromExternalSpecialization ();
79+ TemplateWithIndependentFields<Base3> returnExternalSpecialization ();
7980};
8081
8182class DLL_API DerivedFromSecondaryBaseInDependency : public Derived, public SecondaryBase
You can’t perform that action at this time.
0 commit comments