| diff --git a/source/common/locmap.c b/source/common/locmap.c |
| index c746ce3..224a2b1 100644 |
| --- a/source/common/locmap.c |
| +++ b/source/common/locmap.c |
| @@ -29,6 +29,7 @@ |
| #include "cstring.h" |
| #include "cmemory.h" |
| |
| +#if 0 |
| #if U_PLATFORM == U_PF_WINDOWS && defined(_MSC_VER) && (_MSC_VER >= 1500) |
| /* |
| * TODO: It seems like we should widen this to |
| @@ -40,6 +41,7 @@ |
| */ |
| #define USE_WINDOWS_LOCALE_API |
| #endif |
| +#endif |
| |
| #ifdef USE_WINDOWS_LOCALE_API |
| #include <windows.h> |
| diff --git a/source/common/stringpiece.cpp b/source/common/stringpiece.cpp |
| index 0fb2b3e..007713e 100644 |
| --- a/source/common/stringpiece.cpp |
| +++ b/source/common/stringpiece.cpp |
| @@ -68,6 +68,14 @@ operator==(const StringPiece& x, const StringPiece& y) { |
| } |
| |
| |
| +/* Microsoft Visual Studio (even 2013) complains about redefinition of this |
| + * static const class variable. However, the C++ standard states that this |
| + * definition is correct. Perhaps there is a bug in the Microsoft compiler. |
| + * This is not an issue on any other compilers (that we know of). |
| + * Cygwin with MSVC 9.0 also complains here about redefinition. |
| + */ |
| +#if (!defined(_MSC_VER) || (_MSC_VER > 1800)) && !defined(CYGWINMSVC) |
| const int32_t StringPiece::npos = 0x7fffffff; |
| +#endif |
| |
| U_NAMESPACE_END |
| diff --git a/source/i18n/dtfmtsym.cpp b/source/i18n/dtfmtsym.cpp |
| index e99670d..c9a3502 100644 |
| --- a/source/i18n/dtfmtsym.cpp |
| +++ b/source/i18n/dtfmtsym.cpp |
| @@ -169,7 +169,7 @@ SharedDateFormatSymbols::~SharedDateFormatSymbols() { |
| template<> U_I18N_API |
| const SharedDateFormatSymbols * |
| LocaleCacheKey<SharedDateFormatSymbols>::createObject( |
| - const void */*unusedContext*/, UErrorCode &status) const { |
| + const void * /*unusedContext*/, UErrorCode &status) const { |
| char type[256]; |
| Calendar::getCalendarTypeFromLocale(fLoc, type, UPRV_LENGTHOF(type), status); |
| if (U_FAILURE(status)) { |
| diff --git a/source/common/sharedobject.h b/source/common/sharedobject.h |
| index 4402869..e5062cc 100644 |
| --- a/source/common/sharedobject.h |
| +++ b/source/common/sharedobject.h |
| @@ -21,7 +21,7 @@ U_NAMESPACE_BEGIN |
| * update cache metrics. No other part of ICU, except for SharedObject, |
| * should directly call the methods of this base class. |
| */ |
| -class UnifiedCacheBase : public UObject { |
| +class U_COMMON_API UnifiedCacheBase : public UObject { |
| public: |
| UnifiedCacheBase() { } |
| |