@@ -8889,8 +8889,7 @@ Sema::CheckSpecializationInstantiationRedecl(SourceLocation NewLoc,
88898889 // The declaration itself has not actually been instantiated, so it is
88908890 // still okay to specialize it.
88918891 StripImplicitInstantiation (
8892- PrevDecl,
8893- Context.getTargetInfo ().getTriple ().isWindowsGNUEnvironment ());
8892+ PrevDecl, Context.getTargetInfo ().getTriple ().isOSCygMing ());
88948893 return false ;
88958894 }
88968895 // Fall through
@@ -9758,7 +9757,7 @@ DeclResult Sema::ActOnExplicitInstantiation(
97589757 : TSK_ExplicitInstantiationDeclaration;
97599758
97609759 if (TSK == TSK_ExplicitInstantiationDeclaration &&
9761- !Context.getTargetInfo ().getTriple ().isWindowsGNUEnvironment ()) {
9760+ !Context.getTargetInfo ().getTriple ().isOSCygMing ()) {
97629761 // Check for dllexport class template instantiation declarations,
97639762 // except for MinGW mode.
97649763 for (const ParsedAttr &AL : Attr) {
@@ -9823,7 +9822,7 @@ DeclResult Sema::ActOnExplicitInstantiation(
98239822 = PrevDecl ? PrevDecl->getTemplateSpecializationKind () : TSK_Undeclared;
98249823
98259824 if (TSK == TSK_ExplicitInstantiationDefinition && PrevDecl != nullptr &&
9826- Context.getTargetInfo ().getTriple ().isWindowsGNUEnvironment ()) {
9825+ Context.getTargetInfo ().getTriple ().isOSCygMing ()) {
98279826 // Check for dllexport class template instantiation definitions in MinGW
98289827 // mode, if a previous declaration of the instantiation was seen.
98299828 for (const ParsedAttr &AL : Attr) {
@@ -9991,7 +9990,7 @@ DeclResult Sema::ActOnExplicitInstantiation(
99919990 // In MinGW mode, export the template instantiation if the declaration
99929991 // was marked dllexport.
99939992 if (PrevDecl_TSK == TSK_ExplicitInstantiationDeclaration &&
9994- Context.getTargetInfo ().getTriple ().isWindowsGNUEnvironment () &&
9993+ Context.getTargetInfo ().getTriple ().isOSCygMing () &&
99959994 PrevDecl->hasAttr <DLLExportAttr>()) {
99969995 dllExportImportClassTemplateSpecialization (*this , Def);
99979996 }
0 commit comments