diff options
author | Bernard Normier <bernard@zeroc.com> | 2008-05-01 20:54:01 -0400 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2008-05-01 20:54:01 -0400 |
commit | 07a175a08494ee2cf27affb8d81faa907f0f4b87 (patch) | |
tree | 36ada07d767b49fcb99cc50701bc43baa9f7ff18 /cpp | |
parent | minor update to cs/INSTALL.VISUAL_C# (diff) | |
download | ice-07a175a08494ee2cf27affb8d81faa907f0f4b87.tar.bz2 ice-07a175a08494ee2cf27affb8d81faa907f0f4b87.tar.xz ice-07a175a08494ee2cf27affb8d81faa907f0f4b87.zip |
Fixed bug #3060
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/include/IceUtil/Unicode.h | 64 | ||||
-rw-r--r-- | cpp/src/IceUtil/Unicode.cpp | 34 |
2 files changed, 0 insertions, 98 deletions
diff --git a/cpp/include/IceUtil/Unicode.h b/cpp/include/IceUtil/Unicode.h index 2df19ade7e8..4360437f7f6 100644 --- a/cpp/include/IceUtil/Unicode.h +++ b/cpp/include/IceUtil/Unicode.h @@ -22,72 +22,8 @@ enum ConversionFlags lenientConversion }; -#if defined(_MSC_VER) && (_MSC_VER >= 1300) - -// -// With Visual C++ 7.x, wchar_t is either a typedef unsigned short or a -// native type (when /Zc:wchar_t is used). -// Since wstring is a typedef basic_string<wchar_t>, its type is also -// different depending on whether /Zc:wchar_t is used or not. -// -// With Visual C++ 7.x, the default is typedef; with Visual C++ 8.0, -// the default is native type. -// -// Ice is always built with the default, but provides wstringToString() -// and stringToWstring() implementations for both flavors of wstring. -// - -# if defined(_NATIVE_WCHAR_T_DEFINED) ICE_UTIL_API std::string wstringToString(const std::wstring&, ConversionFlags = lenientConversion); - -# if _MSC_VER >= 1400 -// -// Building or using with VC8 -// ICE_UTIL_API std::wstring stringToWstring(const std::string&, ConversionFlags = lenientConversion); -ICE_UTIL_API std::string wstringToString(const std::basic_string<unsigned short>&, ConversionFlags = lenientConversion); -ICE_UTIL_API std::basic_string<unsigned short> stringToTypedefWstring(const std::string&, ConversionFlags = lenientConversion); -# else -// -// Using a VC7.x build with the non-default /Zc -// -ICE_UTIL_API std::wstring stringToNativeWstring(const std::string&, ConversionFlags = lenientConversion); -inline std::wstring -stringToWstring(const std::string& str, ConversionFlags flags = lenientConversion) -{ - return stringToNativeWstring(str, flags); -} -# endif - -# else -ICE_UTIL_API std::string wstringToString(const std::wstring&, ConversionFlags = lenientConversion); - -# if _MSC_VER < 1400 -// -// Building or using with VC7.x -// -ICE_UTIL_API std::wstring stringToWstring(const std::string&, ConversionFlags = lenientConversion); -ICE_UTIL_API std::string wstringToString(const std::basic_string<__wchar_t>&, ConversionFlags = lenientConversion); -ICE_UTIL_API std::basic_string<__wchar_t> stringToNativeWstring(const std::string&, ConversionFlags = lenientConversion); -# else -// -// Using a VC8.x build the non-default /Zc -// -ICE_UTIL_API std::wstring stringToTypedefWstring(const std::string&, ConversionFlags = lenientConversion); -inline std::wstring -stringToWstring(const std::string& str, ConversionFlags flags = lenientConversion) -{ - return stringToTypedefWstring(str, flags); -} -# endif -# endif - -#else - -ICE_UTIL_API std::string wstringToString(const std::wstring&, ConversionFlags = lenientConversion); -ICE_UTIL_API std::wstring stringToWstring(const std::string&, ConversionFlags = lenientConversion); - -#endif typedef unsigned char Byte; diff --git a/cpp/src/IceUtil/Unicode.cpp b/cpp/src/IceUtil/Unicode.cpp index 8476ece1afd..5a8304df18e 100644 --- a/cpp/src/IceUtil/Unicode.cpp +++ b/cpp/src/IceUtil/Unicode.cpp @@ -236,37 +236,3 @@ IceUtil::stringToWstring(const string& str, ConversionFlags flags) } return result; } - - -#if defined(_MSC_VER) && (_MSC_VER >= 1300) -// -// See comments in IceUtil/Unicode.h -// - -# if _MSC_VER < 1400 -string -IceUtil::wstringToString(const basic_string<__wchar_t>& str, ConversionFlags flags) -{ - return wstringToString(*reinterpret_cast<const wstring*>(&str), flags); -} - -basic_string<__wchar_t> -IceUtil::stringToNativeWstring(const string& str, ConversionFlags flags) -{ - return reinterpret_cast<basic_string<__wchar_t>& >(stringToWstring(str, flags)); -} -# else -string -IceUtil::wstringToString(const basic_string<unsigned short>& str, ConversionFlags flags) -{ - return wstringToString(*reinterpret_cast<const wstring*>(&str), flags); -} - -basic_string<unsigned short> -IceUtil::stringToTypedefWstring(const string& str, ConversionFlags flags) -{ - return reinterpret_cast<basic_string<unsigned short>& >(stringToWstring(str, flags)); -} - -# endif -#endif |