diff --git a/icu4c/source/common/unicode/utypes.h b/icu4c/source/common/unicode/utypes.h index b341cb47d4a..5db17d7498d 100644 --- a/icu4c/source/common/unicode/utypes.h +++ b/icu4c/source/common/unicode/utypes.h @@ -171,7 +171,7 @@ #if defined(OS390) && (__COMPILER_VER__ < 0x41020000) && defined(XP_CPLUSPLUS) # define U_CALLCONV __cdecl #else -# define U_CALLCONV +# define U_CALLCONV U_EXPORT2 #endif /** diff --git a/icu4c/source/common/uvector.cpp b/icu4c/source/common/uvector.cpp index 5ff1ff9c466..01c23e0ede9 100644 --- a/icu4c/source/common/uvector.cpp +++ b/icu4c/source/common/uvector.cpp @@ -88,7 +88,7 @@ UVector::~UVector() { * Assign this object to another (make this a copy of 'other'). * Use the 'assign' function to assign each element. */ -void UVector::assign(const UVector& other, UTokenAssigner assign, UErrorCode &ec) { +void UVector::assign(const UVector& other, UTokenAssigner *assign, UErrorCode &ec) { if (ensureCapacity(other.count, ec)) { setSize(other.count); for (int32_t i=0; i tok2. */ -typedef int8_t (U_EXPORT2 * U_CALLCONV USortComparator)(UHashTok tok1, - UHashTok tok2); +typedef int8_t U_CALLCONV USortComparator(UHashTok tok1, + UHashTok tok2); /** * A token assignment function. It may copy an integer, copy @@ -34,8 +34,8 @@ typedef int8_t (U_EXPORT2 * U_CALLCONV USortComparator)(UHashTok tok1, * @param dst The token to be assigned to * @param src The token to assign from */ -typedef void (U_EXPORT2 * U_CALLCONV UTokenAssigner)(UHashTok dst, - UHashTok src); +typedef void U_CALLCONV UTokenAssigner(UHashTok dst, + UHashTok src); /** *

Ultralightweight C++ implementation of a void* vector @@ -121,7 +121,7 @@ public: * Assign this object to another (make this a copy of 'other'). * Use the 'assign' function to assign each element. */ - void assign(const UVector& other, UTokenAssigner assign, UErrorCode &ec); + void assign(const UVector& other, UTokenAssigner *assign, UErrorCode &ec); /** * Compare this vector with another. They will be considered @@ -236,14 +236,14 @@ public: * as defined by 'compare'. The current elements are assumed to * be sorted already. */ - void sortedInsert(void* obj, USortComparator compare, UErrorCode& ec); + void sortedInsert(void* obj, USortComparator *compare, UErrorCode& ec); /** * Insert the given integer into this vector at its sorted position * as defined by 'compare'. The current elements are assumed to * be sorted already. */ - void sortedInsert(int32_t obj, USortComparator compare, UErrorCode& ec); + void sortedInsert(int32_t obj, USortComparator *compare, UErrorCode& ec); /** * ICU "poor man's RTTI", returns a UClassID for the actual class. @@ -264,7 +264,7 @@ private: int32_t indexOf(UHashTok key, int32_t startIndex = 0, int8_t hint = 0) const; - void sortedInsert(UHashTok tok, USortComparator compare, UErrorCode& ec); + void sortedInsert(UHashTok tok, USortComparator *compare, UErrorCode& ec); // Disallow UVector(const UVector&);