summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/dllimport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/dllimport.cpp')
-rw-r--r--clang/test/SemaCXX/dllimport.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/clang/test/SemaCXX/dllimport.cpp b/clang/test/SemaCXX/dllimport.cpp
index 6052ea1feef..62d4f7b5759 100644
--- a/clang/test/SemaCXX/dllimport.cpp
+++ b/clang/test/SemaCXX/dllimport.cpp
@@ -1282,13 +1282,9 @@ class __declspec(dllimport) DerivedFromExportedTemplate : public ExportedClassTe
class DerivedFromTemplateD : public ClassTemplate<double> {};
class __declspec(dllimport) DerivedFromTemplateD2 : public ClassTemplate<double> {};
-#ifdef MS
-// expected-note@+4{{class template 'ClassTemplate<bool>' was instantiated here}}
-// expected-warning@+4{{propagating dll attribute to already instantiated base class template with different dll attribute is not supported}}
-// expected-note@+3{{attribute is here}}
-#endif
-class __declspec(dllexport) DerivedFromTemplateB : public ClassTemplate<bool> {};
-class __declspec(dllimport) DerivedFromTemplateB2 : public ClassTemplate<bool> {};
+class __declspec(dllimport) DerivedFromTemplateB : public ClassTemplate<bool> {};
+// The second derived class doesn't change anything, the attribute that was propagated first wins.
+class __declspec(dllexport) DerivedFromTemplateB2 : public ClassTemplate<bool> {};
template <typename T> struct ExplicitlySpecializedTemplate { void func() {} };
#ifdef MS
OpenPOWER on IntegriCloud