ubrk.h	UBRK_TITLE	ICU 2.8 Use the word break iterator for titlecasing for Unicode 4 and later.
ucol.h	ucol_getLocale	ICU 2.8 Use ucol_getLocaleByType instead
uloc.h	ULOC_REQUESTED_LOCALE	ICU 2.8
ures.h	RES_NONE	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_STRING	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_BINARY	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_TABLE	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_ALIAS	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_INT	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_ARRAY	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_INT_VECTOR	ICU 2.6 Use the URES_ constant instead.
ures.h	RES_RESERVED	ICU 2.6 Not used.
ures.h	ures_countArrayItems	ICU 2.8 User ures_getSize instead
ures.h	ures_getLocale	ICU 2.8 Use ures_getLocaleByType instead.
ures.h	ures_getVersionNumber	ICU 2.8 Use ures_getVersion instead.
utf_old.h	(null)	ICU 2.4. Use the macros in utf.h, utf16.h, utf8.h instead.
utf_old.h	UTF16_APPEND_CHAR_SAFE	ICU 2.4. Use U16_APPEND instead, see utf_old.h.
utf_old.h	UTF16_APPEND_CHAR_UNSAFE	ICU 2.4. Renamed to U16_APPEND_UNSAFE, see utf_old.h.
utf_old.h	UTF16_ARRAY_SIZE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF16_BACK_1_SAFE	ICU 2.4. Renamed to U16_BACK_1, see utf_old.h.
utf_old.h	UTF16_BACK_1_UNSAFE	ICU 2.4. Renamed to U16_BACK_1_UNSAFE, see utf_old.h.
utf_old.h	UTF16_BACK_N_SAFE	ICU 2.4. Renamed to U16_BACK_N, see utf_old.h.
utf_old.h	UTF16_BACK_N_UNSAFE	ICU 2.4. Renamed to U16_BACK_N_UNSAFE, see utf_old.h.
utf_old.h	UTF16_CHAR_LENGTH	ICU 2.4. Renamed to U16_LENGTH, see utf_old.h.
utf_old.h	UTF16_FWD_1_SAFE	ICU 2.4. Renamed to U16_FWD_1, see utf_old.h.
utf_old.h	UTF16_FWD_1_UNSAFE	ICU 2.4. Renamed to U16_FWD_1_UNSAFE, see utf_old.h.
utf_old.h	UTF16_FWD_N_SAFE	ICU 2.4. Renamed to U16_FWD_N, see utf_old.h.
utf_old.h	UTF16_FWD_N_UNSAFE	ICU 2.4. Renamed to U16_FWD_N_UNSAFE, see utf_old.h.
utf_old.h	UTF16_GET_CHAR_SAFE	ICU 2.4. Use U16_GET instead, see utf_old.h.
utf_old.h	UTF16_GET_CHAR_UNSAFE	ICU 2.4. Renamed to U16_GET_UNSAFE, see utf_old.h.
utf_old.h	UTF16_GET_PAIR_VALUE	ICU 2.4. Renamed to U16_GET_SUPPLEMENTARY, see utf_old.h.
utf_old.h	UTF16_IS_LEAD	ICU 2.4. Renamed to U16_IS_LEAD, see utf_old.h.
utf_old.h	UTF16_IS_SINGLE	ICU 2.4. Renamed to U16_IS_SINGLE, see utf_old.h.
utf_old.h	UTF16_IS_TRAIL	ICU 2.4. Renamed to U16_IS_TRAIL, see utf_old.h.
utf_old.h	UTF16_LEAD	ICU 2.4. Renamed to U16_LEAD, see utf_old.h.
utf_old.h	UTF16_MAX_CHAR_LENGTH	ICU 2.4. Renamed to U16_MAX_LENGTH, see utf_old.h.
utf_old.h	UTF16_NEED_MULTIPLE_UCHAR	ICU 2.4. Use U16_LENGTH or test ((uint32_t)(c)>0xffff) instead, see utf_old.h.
utf_old.h	UTF16_NEXT_CHAR_SAFE	ICU 2.4. Use U16_NEXT instead, see utf_old.h.
utf_old.h	UTF16_NEXT_CHAR_UNSAFE	ICU 2.4. Renamed to U16_NEXT_UNSAFE, see utf_old.h.
utf_old.h	UTF16_PREV_CHAR_SAFE	ICU 2.4. Use U16_PREV instead, see utf_old.h.
utf_old.h	UTF16_PREV_CHAR_UNSAFE	ICU 2.4. Renamed to U16_PREV_UNSAFE, see utf_old.h.
utf_old.h	UTF16_SET_CHAR_LIMIT_SAFE	ICU 2.4. Renamed to U16_SET_CP_LIMIT, see utf_old.h.
utf_old.h	UTF16_SET_CHAR_LIMIT_UNSAFE	ICU 2.4. Renamed to U16_SET_CP_LIMIT_UNSAFE, see utf_old.h.
utf_old.h	UTF16_SET_CHAR_START_SAFE	ICU 2.4. Renamed to U16_SET_CP_START, see utf_old.h.
utf_old.h	UTF16_SET_CHAR_START_UNSAFE	ICU 2.4. Renamed to U16_SET_CP_START_UNSAFE, see utf_old.h.
utf_old.h	UTF16_TRAIL	ICU 2.4. Renamed to U16_TRAIL, see utf_old.h.
utf_old.h	UTF32_APPEND_CHAR_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_APPEND_CHAR_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_ARRAY_SIZE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_BACK_1_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_BACK_1_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_BACK_N_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_BACK_N_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_CHAR_LENGTH	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_FWD_1_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_FWD_1_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_FWD_N_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_FWD_N_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_GET_CHAR_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_GET_CHAR_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_IS_LEAD	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_IS_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_IS_SINGLE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_IS_TRAIL	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_MAX_CHAR_LENGTH	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_NEED_MULTIPLE_UCHAR	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_NEXT_CHAR_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_NEXT_CHAR_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_PREV_CHAR_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_PREV_CHAR_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_SET_CHAR_LIMIT_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_SET_CHAR_LIMIT_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_SET_CHAR_START_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF32_SET_CHAR_START_UNSAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF8_APPEND_CHAR_SAFE	ICU 2.4. Use U8_APPEND instead, see utf_old.h.
utf_old.h	UTF8_APPEND_CHAR_UNSAFE	ICU 2.4. Renamed to U8_APPEND_UNSAFE, see utf_old.h.
utf_old.h	UTF8_ARRAY_SIZE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF8_BACK_1_SAFE	ICU 2.4. Renamed to U8_BACK_1, see utf_old.h.
utf_old.h	UTF8_BACK_1_UNSAFE	ICU 2.4. Renamed to U8_BACK_1_UNSAFE, see utf_old.h.
utf_old.h	UTF8_BACK_N_SAFE	ICU 2.4. Renamed to U8_BACK_N, see utf_old.h.
utf_old.h	UTF8_BACK_N_UNSAFE	ICU 2.4. Renamed to U8_BACK_N_UNSAFE, see utf_old.h.
utf_old.h	UTF8_CHAR_LENGTH	ICU 2.4. Use U8_LENGTH instead, see utf_old.h.
utf_old.h	UTF8_COUNT_TRAIL_BYTES	ICU 2.4. Renamed to U8_COUNT_TRAIL_BYTES, see utf_old.h.
utf_old.h	UTF8_ERROR_VALUE_1	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF8_ERROR_VALUE_2	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF8_FWD_1_SAFE	ICU 2.4. Renamed to U8_FWD_1, see utf_old.h.
utf_old.h	UTF8_FWD_1_UNSAFE	ICU 2.4. Renamed to U8_FWD_1_UNSAFE, see utf_old.h.
utf_old.h	UTF8_FWD_N_SAFE	ICU 2.4. Renamed to U8_FWD_N, see utf_old.h.
utf_old.h	UTF8_FWD_N_UNSAFE	ICU 2.4. Renamed to U8_FWD_N_UNSAFE, see utf_old.h.
utf_old.h	UTF8_GET_CHAR_SAFE	ICU 2.4. Use U8_GET instead, see utf_old.h.
utf_old.h	UTF8_GET_CHAR_UNSAFE	ICU 2.4. Renamed to U8_GET_UNSAFE, see utf_old.h.
utf_old.h	UTF8_IS_LEAD	ICU 2.4. Renamed to U8_IS_LEAD, see utf_old.h.
utf_old.h	UTF8_IS_SINGLE	ICU 2.4. Renamed to U8_IS_SINGLE, see utf_old.h.
utf_old.h	UTF8_IS_TRAIL	ICU 2.4. Renamed to U8_IS_TRAIL, see utf_old.h.
utf_old.h	UTF8_MASK_LEAD_BYTE	ICU 2.4. Renamed to U8_MASK_LEAD_BYTE, see utf_old.h.
utf_old.h	UTF8_MAX_CHAR_LENGTH	ICU 2.4. Renamed to U8_MAX_LENGTH, see utf_old.h.
utf_old.h	UTF8_NEED_MULTIPLE_UCHAR	ICU 2.4. Use U8_LENGTH or test ((uint32_t)(c)>0x7f) instead, see utf_old.h.
utf_old.h	UTF8_NEXT_CHAR_SAFE	ICU 2.4. Use U8_NEXT instead, see utf_old.h.
utf_old.h	UTF8_NEXT_CHAR_UNSAFE	ICU 2.4. Renamed to U8_NEXT_UNSAFE, see utf_old.h.
utf_old.h	UTF8_PREV_CHAR_SAFE	ICU 2.4. Use U8_PREV instead, see utf_old.h.
utf_old.h	UTF8_PREV_CHAR_UNSAFE	ICU 2.4. Renamed to U8_PREV_UNSAFE, see utf_old.h.
utf_old.h	UTF8_SET_CHAR_LIMIT_SAFE	ICU 2.4. Renamed to U8_SET_CP_LIMIT, see utf_old.h.
utf_old.h	UTF8_SET_CHAR_LIMIT_UNSAFE	ICU 2.4. Renamed to U8_SET_CP_LIMIT_UNSAFE, see utf_old.h.
utf_old.h	UTF8_SET_CHAR_START_SAFE	ICU 2.4. Renamed to U8_SET_CP_START, see utf_old.h.
utf_old.h	UTF8_SET_CHAR_START_UNSAFE	ICU 2.4. Renamed to U8_SET_CP_START_UNSAFE, see utf_old.h.
utf_old.h	UTF_APPEND_CHAR	ICU 2.4. Use U16_APPEND instead, see utf_old.h.
utf_old.h	UTF_APPEND_CHAR_SAFE	ICU 2.4. Use U16_APPEND instead, see utf_old.h.
utf_old.h	UTF_APPEND_CHAR_UNSAFE	ICU 2.4. Renamed to U16_APPEND_UNSAFE, see utf_old.h.
utf_old.h	UTF_ARRAY_SIZE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_BACK_1	ICU 2.4. Renamed to U16_BACK_1, see utf_old.h.
utf_old.h	UTF_BACK_1_SAFE	ICU 2.4. Renamed to U16_BACK_1, see utf_old.h.
utf_old.h	UTF_BACK_1_UNSAFE	ICU 2.4. Renamed to U16_BACK_1_UNSAFE, see utf_old.h.
utf_old.h	UTF_BACK_N	ICU 2.4. Renamed to U16_BACK_N, see utf_old.h.
utf_old.h	UTF_BACK_N_SAFE	ICU 2.4. Renamed to U16_BACK_N, see utf_old.h.
utf_old.h	UTF_BACK_N_UNSAFE	ICU 2.4. Renamed to U16_BACK_N_UNSAFE, see utf_old.h.
utf_old.h	UTF_CHAR_LENGTH	ICU 2.4. Renamed to U16_LENGTH, see utf_old.h.
utf_old.h	UTF_ERROR_VALUE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_FIRST_SURROGATE	ICU 2.4. Renamed to U16_LEAD, see utf_old.h.
utf_old.h	UTF_FWD_1	ICU 2.4. Renamed to U16_FWD_1, see utf_old.h.
utf_old.h	UTF_FWD_1_SAFE	ICU 2.4. Renamed to U16_FWD_1, see utf_old.h.
utf_old.h	UTF_FWD_1_UNSAFE	ICU 2.4. Renamed to U16_FWD_1_UNSAFE, see utf_old.h.
utf_old.h	UTF_FWD_N	ICU 2.4. Renamed to U16_FWD_N, see utf_old.h.
utf_old.h	UTF_FWD_N_SAFE	ICU 2.4. Renamed to U16_FWD_N, see utf_old.h.
utf_old.h	UTF_FWD_N_UNSAFE	ICU 2.4. Renamed to U16_FWD_N_UNSAFE, see utf_old.h.
utf_old.h	UTF_GET_CHAR	ICU 2.4. Renamed to U16_GET, see utf_old.h.
utf_old.h	UTF_GET_CHAR_SAFE	ICU 2.4. Use U16_GET instead, see utf_old.h.
utf_old.h	UTF_GET_CHAR_UNSAFE	ICU 2.4. Renamed to U16_GET_UNSAFE, see utf_old.h.
utf_old.h	UTF_IS_ERROR	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_IS_FIRST_SURROGATE	ICU 2.4. Renamed to U_IS_LEAD and U16_IS_LEAD, see utf_old.h.
utf_old.h	UTF_IS_LEAD	ICU 2.4. Renamed to U_IS_LEAD and U16_IS_LEAD, see utf_old.h.
utf_old.h	UTF_IS_SECOND_SURROGATE	ICU 2.4. Renamed to U_IS_TRAIL and U16_IS_TRAIL, see utf_old.h.
utf_old.h	UTF_IS_SINGLE	ICU 2.4. Renamed to U_IS_SINGLE and U16_IS_SINGLE, see utf_old.h.
utf_old.h	UTF_IS_SURROGATE	ICU 2.4. Renamed to U_IS_SURROGATE and U16_IS_SURROGATE, see utf_old.h.
utf_old.h	UTF_IS_SURROGATE_FIRST	ICU 2.4. Renamed to U_IS_SURROGATE_LEAD and U16_IS_SURROGATE_LEAD, see utf_old.h.
utf_old.h	UTF_IS_TRAIL	ICU 2.4. Renamed to U_IS_TRAIL and U16_IS_TRAIL, see utf_old.h.
utf_old.h	UTF_IS_UNICODE_CHAR	ICU 2.4. Renamed to U_IS_UNICODE_CHAR, see utf_old.h.
utf_old.h	UTF_IS_UNICODE_NONCHAR	ICU 2.4. Renamed to U_IS_UNICODE_NONCHAR, see utf_old.h.
utf_old.h	UTF_IS_VALID	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_MAX_CHAR_LENGTH	ICU 2.4. Renamed to U16_MAX_LENGTH, see utf_old.h.
utf_old.h	UTF_NEED_MULTIPLE_UCHAR	ICU 2.4. Use U16_LENGTH or test ((uint32_t)(c)>0xffff) instead.
utf_old.h	UTF_NEXT_CHAR	ICU 2.4. Renamed to U16_NEXT, see utf_old.h.
utf_old.h	UTF_NEXT_CHAR_SAFE	ICU 2.4. Use U16_NEXT instead, see utf_old.h.
utf_old.h	UTF_NEXT_CHAR_UNSAFE	ICU 2.4. Renamed to U16_NEXT_UNSAFE, see utf_old.h.
utf_old.h	UTF_PREV_CHAR	ICU 2.4. Renamed to U16_PREV, see utf_old.h.
utf_old.h	UTF_PREV_CHAR_SAFE	ICU 2.4. Use U16_PREV instead, see utf_old.h.
utf_old.h	UTF_PREV_CHAR_UNSAFE	ICU 2.4. Renamed to U16_PREV_UNSAFE, see utf_old.h.
utf_old.h	UTF_SAFE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_SECOND_SURROGATE	ICU 2.4. Renamed to U16_TRAIL, see utf_old.h.
utf_old.h	UTF_SET_CHAR_LIMIT	ICU 2.4. Renamed to U16_SET_CP_LIMIT, see utf_old.h.
utf_old.h	UTF_SET_CHAR_LIMIT_SAFE	ICU 2.4. Renamed to U16_SET_CP_LIMIT, see utf_old.h.
utf_old.h	UTF_SET_CHAR_LIMIT_UNSAFE	ICU 2.4. Renamed to U16_SET_CP_LIMIT_UNSAFE, see utf_old.h.
utf_old.h	UTF_SET_CHAR_START	ICU 2.4. Renamed to U16_SET_CP_START, see utf_old.h.
utf_old.h	UTF_SET_CHAR_START_SAFE	ICU 2.4. Renamed to U16_SET_CP_START, see utf_old.h.
utf_old.h	UTF_SET_CHAR_START_UNSAFE	ICU 2.4. Renamed to U16_SET_CP_START_UNSAFE, see utf_old.h.
utf_old.h	UTF_SIZE	ICU 2.4. Obsolete, see utf_old.h.
utf_old.h	UTF_SURROGATE_OFFSET	ICU 2.4. Renamed to U16_SURROGATE_OFFSET, see utf_old.h.
utrans.h	utrans_getAvailableID	ICU 2.8 Use utrans_openIDs() instead, see utrans.h
utrans.h	utrans_getID	ICU 2.8 Use utrans_getUnicodeID() instead, see utrans.h
utrans.h	utrans_open	ICU 2.8 Use utrans_openU() instead, see utrans.h
utrans.h	utrans_unregister	ICU 2.8 Use utrans_unregisterID() instead, see utrans.h
Calendar	EAmpm	ICU 2.6. Use C enum UCalendarAMPMs defined in ucal.h
Calendar	EDateFields	ICU 2.6. Use C enum UCalendarDateFields defined in ucal.h
Calendar	EDaysOfWeek	ICU 2.6. Use C enum UCalendarDaysOfWeek defined in ucal.h
Calendar	EMonths	ICU 2.6. Use C enum UCalendarMonths defined in ucal.h
Calendar	add	ICU 2.6. use add(UCalendarDateFields field, int32_t amount, UErrorCode& status) instead.
Calendar	clear	ICU 2.6. Use clear(UCalendarDateFields field) instead.
Calendar	fieldDifference	ICU 2.6. Use fieldDifference(UDate when, UCalendarDateFields field, UErrorCode& status).
Calendar	get	ICU 2.6. Use get(UCalendarDateFields field, UErrorCode& status) instead.
Calendar	getActualMaximum	ICU 2.6. Use getActualMaximum(UCalendarDateFields field, UErrorCode& status) instead.
Calendar	getActualMinimum	ICU 2.6. Use getActualMinimum(UCalendarDateFields field, UErrorCode& status) instead.
Calendar	getFirstDayOfWeek	ICU 2.6 use the overload with error code
Calendar	getGreatestMinimum	ICU 2.6. Use getGreatestMinimum(UCalendarDateFields field) instead.
Calendar	getLeastMaximum	ICU 2.6. Use getLeastMaximum(UCalendarDateFields field) instead.
Calendar	getMaximum	ICU 2.6. Use getMaximum(UCalendarDateFields field) instead.
Calendar	getMinimum	ICU 2.6. Use getMinimum(UCalendarDateFields field) instead.
Calendar	internalGet	ICU 2.6. Use internalGet(UCalendarDateFields field) instead.
Calendar	internalSet	ICU 2.6. Use internalSet(UCalendarDateFields field, int32_t value) instead.
Calendar	isSet	ICU 2.6. Use isSet(UCalendarDateFields field) instead.
Calendar	roll	ICU 2.6. Use roll(UCalendarDateFields field, int32_t amount, UErrorCode& status) instead.
Calendar	roll	ICU 2.6. Use roll(UCalendarDateFields field, UBool up, UErrorCode& status) instead.
Calendar	set	ICU 2.6. Use set(UCalendarDateFields field, int32_t value) instead.
Calendar	setFirstDayOfWeek	ICU 2.6. Use setFirstDayOfWeek(UCalendarDaysOfWeek value) instead.
Calendar	fIsSet	ICU 2.8 use (fStamp[n]!=kUnset)
CollationKey	(null)	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	CollationKey	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	CollationKey	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	CollationKey	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	~CollationKey	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	compareTo	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	compareTo	ICU 2.6 use the overload with error code
CollationKey	getByteArray	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	getDynamicClassID	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	getStaticClassID	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	hashCode	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	isBogus	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	operator!=	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	operator=	ICU 2.8 Use Collator::getSortKey(...) instead
CollationKey	operator==	ICU 2.8 Use Collator::getSortKey(...) instead
Collator	EComparisonResult	ICU 2.6. Use C enum UCollationResult defined in ucol.h
Collator	Collator	ICU 2.4. Subclasses should use the default constructor
Collator	compare	ICU 2.6 use the overload with UErrorCode &
Collator	compare	ICU 2.6 use the overload with UErrorCode &
Collator	compare	ICU 2.6 use the overload with UErrorCode &
Collator	getCollationKey	ICU 2.8 Use getSortKey(...) instead
Collator	getCollationKey	ICU 2.8 Use getSortKey(...) instead
Collator	getLocale	ICU 2.8 This API is under consideration for revision
Collator	getStrength	ICU 2.6 Use getAttribute(UCOL_STRENGTH...) instead
Collator	setStrength	ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead
GregorianCalendar	getActualMaximum	ICU 2.6. Use getActualMaximum(UCalendarDateFields field) instead.
GregorianCalendar	getActualMinimum	ICU 2.6. Use getActualMinimum(UCalendarDateFields field) instead. (Added to ICU 3.0 for signature consistency)
GregorianCalendar	getActualMinimum	ICU 2.6. Use getActualMinimum(UCalendarDateFields field) instead.
GregorianCalendar	roll	ICU 2.6. Use roll(UCalendarDateFields field, int32_t amount, UErrorCode& status) instead.
ResourceBundle	getLocale	ICU 2.8 Use getLocale(ULocDataLocaleType type, UErrorCode &status) overload instead.
ResourceBundle	getVersionNumber	ICU 2.8 Use getVersion instead.
RuleBasedCollator	compare	ICU 2.6 Use overload with UErrorCode&
RuleBasedCollator	compare	ICU 2.6 Use overload with UErrorCode&
RuleBasedCollator	compare	ICU 2.6 Use overload with UErrorCode&
RuleBasedCollator	getCollationKey	ICU 2.8 Use getSortKey(...) instead
RuleBasedCollator	getCollationKey	ICU 2.8 Use getSortKey(...) instead
RuleBasedCollator	getEComparisonResult	ICU 2.6. We will not need it.
RuleBasedCollator	getLocale	ICU 2.8 likely to change in ICU 3.0, based on feedback
RuleBasedCollator	getStrength	ICU 2.6 Use getAttribute(UCOL_STRENGTH...) instead
RuleBasedCollator	setStrength	ICU 2.6 Use setAttribute(UCOL_STRENGTH...) instead
SimpleTimeZone	inDaylightTime	ICU 2.4. Use Calendar::inDaylightTime() instead.
TimeZone	inDaylightTime	ICU 2.4. Use Calendar::inDaylightTime() instead.
