diff --git a/src/usinstances.cpp b/src/usinstances.cpp index 3fe54a36..35400006 100644 --- a/src/usinstances.cpp +++ b/src/usinstances.cpp @@ -24,6 +24,11 @@ #define BOOST_REGEX_US_INSTANTIATE #ifdef _DLL_CPPLIB +// +// This is a horrible workaround, without declaring these symbols extern we get +// duplicate symbol errors when linking if the application is built without +// /Zc:wchar_t +// namespace std{ template _CRTIMP2 bool __cdecl operator==( const basic_string, allocator >&, @@ -40,6 +45,7 @@ template _CRTIMP2 bool __cdecl operator<( template _CRTIMP2 bool __cdecl operator>( const basic_string, allocator >&, const basic_string, allocator >&); +template<> _CRTIMP2 std::size_t __cdecl char_traits::length(unsigned short const*); } #endif