avt77 added a comment.

It seems the latest MSVC changed the support of several features covering in 
this patch: more investigations needed.


================
Comment at: test/SemaCXX/dllimport.cpp:179
@@ -140,1 +178,3 @@
+template <typename T>
+int ExternVarTmplDeclInit = 1;
 
----------------
rnk wrote:
> Can you check with MSVC 2015 update 2 actually does with definitions of 
> dllimport variable templates? I bet it doesn't export them.
They don't support variable templates at all:

error C2399: variable templates are not supported in this release

================
Comment at: test/SemaCXX/dllimport.cpp:1137
@@ -1017,1 +1136,3 @@
+template <typename T>
+void ImportClassTmplMembers<T>::normalDef() {}
 #ifdef GNU
----------------
rnk wrote:
> I'm pretty sure MSVC considers all free function templates to be 'inline', 
> i.e. they put them in comdats. I doubt MSVC exports these. Can you verify 
> what it does?
They prohibit such a definition in the latest MSVC: 

error C2491: 'ImportClassTmplMembers<T>::normalDef': definition of dllimport 
function not allowed

The same error I see for other definitions as well


http://reviews.llvm.org/D18953



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to