From: Vadim Zeitlin Date: Wed, 25 Feb 2009 23:02:53 +0000 (+0000) Subject: don't use template assign() with VC6, even though it can compile it it doesn't handle... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/936525578d838199cf0592e0f89f0a14550398c6 don't use template assign() with VC6, even though it can compile it it doesn't handle it correctly when using DLL git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/arrstr.h b/include/wx/arrstr.h index 14c291b249..3bc11f0655 100644 --- a/include/wx/arrstr.h +++ b/include/wx/arrstr.h @@ -92,10 +92,14 @@ public: #else // if !wxUSE_STL // this shouldn't be defined for compilers not supporting template methods or -// without std::distance() -- and if all of the currently supported compilers -// do have it, then it can just be removed and wxHAS_VECTOR_TEMPLATE_ASSIGN -// code always used -#define wxHAS_VECTOR_TEMPLATE_ASSIGN +// without std::distance() +// +// FIXME-VC6: currently it's only not defined for VC6 in DLL build as it +// doesn't export template methods from DLL correctly so even though +// it compiles them fine, we get link errors when using wxArrayString +#if !defined(__VISUALC6__) || !(defined(WXMAKINGDLL || defined(WXUSINGDLL))) + #define wxHAS_VECTOR_TEMPLATE_ASSIGN +#endif #ifdef wxHAS_VECTOR_TEMPLATE_ASSIGN #include "wx/beforestd.h"