Boost logo

Boost-Commit :

From: john_at_[hidden]
Date: 2008-07-30 05:35:44


Author: johnmaddock
Date: 2008-07-30 05:35:44 EDT (Wed, 30 Jul 2008)
New Revision: 47880
URL: http://svn.boost.org/trac/boost/changeset/47880

Log:
Disable MSVC std lib workarounds if we're really using STLPort or Apache/RW std lib.
Text files modified:
   trunk/libs/regex/src/wc_regex_traits.cpp | 5 +++--
   1 files changed, 3 insertions(+), 2 deletions(-)

Modified: trunk/libs/regex/src/wc_regex_traits.cpp
==============================================================================
--- trunk/libs/regex/src/wc_regex_traits.cpp (original)
+++ trunk/libs/regex/src/wc_regex_traits.cpp 2008-07-30 05:35:44 EDT (Wed, 30 Jul 2008)
@@ -23,7 +23,8 @@
 #include <memory>
 #include <string>
 
-#if defined(_DLL_CPPLIB) && !defined(_M_CEE_PURE)
+#if defined(_DLL_CPPLIB) && !defined(_M_CEE_PURE) \
+ && !(defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION) || defined(__STD_RWCOMPILER_H__) || defined(_RWSTD_VER))
 //
 // This is a horrible workaround, but without declaring these symbols extern we get
 // duplicate symbol errors when linking if the application is built without
@@ -38,7 +39,7 @@
 namespace std{
 
 #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)
-template BOOST_REGEX_STDLIB_DECL allocator<unsigned short>::allocator();
+template class BOOST_REGEX_STDLIB_DECL allocator<unsigned short>;
 template class BOOST_REGEX_STDLIB_DECL _String_val<unsigned short, allocator<unsigned short> >;
 template class BOOST_REGEX_STDLIB_DECL basic_string<unsigned short, char_traits<unsigned short>,
         allocator<unsigned short> >;


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk