ICU4C API Comparison: ICU 76 with ICU 77


Removed from ICU 76

FileAPIICU 76ICU 77
messageformat2_data_model.hBuilder& icu::message2::MFDataModel::Builder::addSelector(Expression&&, UErrorCode&)Internal
ICU 75
(missing)
resbund.hconst Locale icu::ResourceBundle::getLocale(ULocDataLocaleType, UErrorCode&) constStable
ICU 2.8
(missing)
timezone.hstatic const UnicodeString icu::TimeZone::getEquivalentID(const UnicodeString&, int32_t)Stable
ICU 2.0
(missing)
uset.hUnicodeString U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator* () constDraft
ICU 76
(missing)

(jump back to top)

Deprecated or Obsoleted in ICU 77

FileAPIICU 76ICU 77

(jump back to top)

Changed in ICU 77 (old, new)

FileAPIICU 76ICU 77
numberformatter.hUnlocalizedNumberFormatter icu::number::LocalizedNumberFormatter::withoutLocale() &&Draft→Stable
ICU 75
numberformatter.hUnlocalizedNumberFormatter icu::number::LocalizedNumberFormatter::withoutLocale() const &Draft→Stable
ICU 75
numberrangeformatter.hUnlocalizedNumberRangeFormatter icu::number::LocalizedNumberRangeFormatter::withoutLocale() &&Draft→Stable
ICU 75
numberrangeformatter.hUnlocalizedNumberRangeFormatter icu::number::LocalizedNumberRangeFormatter::withoutLocale() const &Draft→Stable
ICU 75
simplenumberformatter.hvoid icu::number::SimpleNumber::setMaximumIntegerDigits(uint32_t, UErrorCode&)Draft→Stable
ICU 75
uchar.hbool u_hasIDType(UChar32, UIdentifierType)Draft→Stable
ICU 75
uchar.henum UIdentifierStatus::U_ID_STATUS_ALLOWEDDraft→Stable
ICU 75
uchar.henum UIdentifierStatus::U_ID_STATUS_RESTRICTEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_DEFAULT_IGNORABLEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_DEPRECATEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_EXCLUSIONDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_INCLUSIONDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_LIMITED_USEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_CHARACTERDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_NFKCDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_XIDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_OBSOLETEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_RECOMMENDEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_TECHNICALDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_UNCOMMON_USEDraft→Stable
ICU 75
uchar.henum UProperty::UCHAR_IDENTIFIER_STATUSDraft→Stable
ICU 75
uchar.henum UProperty::UCHAR_IDENTIFIER_TYPEDraft→Stable
ICU 75
uchar.hint32_t u_getIDTypes(UChar32, UIdentifierType*, int32_t, UErrorCode*)Draft→Stable
ICU 75
uniset.hU_HEADER_NESTED_NAMESPACE::USetElementIterator icu::UnicodeSet::begin() constDraft
ICU 76
Draft
ICU 77
uniset.hU_HEADER_NESTED_NAMESPACE::USetElementIterator icu::UnicodeSet::end() constDraft
ICU 76
Draft
ICU 77
uset.hUSetElementIterator & U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator++()Draft
ICU 76
Draft
ICU 77
uset.hUSetElementIterator U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator++(int)Draft
ICU 76
Draft
ICU 77
uset.hUSetElementIterator U_HEADER_ONLY_NAMESPACE::USetElements::begin() constDraft
ICU 76
Draft
ICU 77
uset.hUSetElementIterator U_HEADER_ONLY_NAMESPACE::USetElements::end() constDraft
ICU 76
Draft
ICU 77
uset.hU_HEADER_ONLY_NAMESPACE::USetElementIterator::USetElementIterator(const USetElementIterator&)=defaultDraft
ICU 76
Draft
ICU 77
uset.hU_HEADER_ONLY_NAMESPACE::USetElements::USetElements(const USet*)Draft
ICU 76
Draft
ICU 77
uset.hU_HEADER_ONLY_NAMESPACE::USetElements::USetElements(const USetElements&)=defaultDraft
ICU 76
Draft
ICU 77
uset.hbool U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator!=(const USetElementIterator&) constDraft
ICU 76
Draft
ICU 77
uset.hbool U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator==(const USetElementIterator&) constDraft
ICU 76
Draft
ICU 77
usimplenumberformatter.hvoid usnum_setMaximumIntegerDigits(USimpleNumber*, int32_t, UErrorCode*)Draft→Stable
ICU 75

(jump back to top)

Promoted to stable in ICU 77

FileAPIICU 76ICU 77
numberformatter.hUnlocalizedNumberFormatter icu::number::LocalizedNumberFormatter::withoutLocale() &&Draft→Stable
ICU 75
numberformatter.hUnlocalizedNumberFormatter icu::number::LocalizedNumberFormatter::withoutLocale() const &Draft→Stable
ICU 75
numberrangeformatter.hUnlocalizedNumberRangeFormatter icu::number::LocalizedNumberRangeFormatter::withoutLocale() &&Draft→Stable
ICU 75
numberrangeformatter.hUnlocalizedNumberRangeFormatter icu::number::LocalizedNumberRangeFormatter::withoutLocale() const &Draft→Stable
ICU 75
resbund.hLocale icu::ResourceBundle::getLocale(ULocDataLocaleType, UErrorCode&) const(missing)Stable
ICU 2.8
simplenumberformatter.hvoid icu::number::SimpleNumber::setMaximumIntegerDigits(uint32_t, UErrorCode&)Draft→Stable
ICU 75
timezone.hstatic UnicodeString icu::TimeZone::getEquivalentID(const UnicodeString&, int32_t)(missing)Stable
ICU 2.0
uchar.hbool u_hasIDType(UChar32, UIdentifierType)Draft→Stable
ICU 75
uchar.henum UIdentifierStatus::U_ID_STATUS_ALLOWEDDraft→Stable
ICU 75
uchar.henum UIdentifierStatus::U_ID_STATUS_RESTRICTEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_DEFAULT_IGNORABLEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_DEPRECATEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_EXCLUSIONDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_INCLUSIONDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_LIMITED_USEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_CHARACTERDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_NFKCDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_NOT_XIDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_OBSOLETEDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_RECOMMENDEDDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_TECHNICALDraft→Stable
ICU 75
uchar.henum UIdentifierType::U_ID_TYPE_UNCOMMON_USEDraft→Stable
ICU 75
uchar.henum UProperty::UCHAR_IDENTIFIER_STATUSDraft→Stable
ICU 75
uchar.henum UProperty::UCHAR_IDENTIFIER_TYPEDraft→Stable
ICU 75
uchar.hint32_t u_getIDTypes(UChar32, UIdentifierType*, int32_t, UErrorCode*)Draft→Stable
ICU 75
usimplenumberformatter.hvoid usnum_setMaximumIntegerDigits(USimpleNumber*, int32_t, UErrorCode*)Draft→Stable
ICU 75

(jump back to top)

Added in ICU 77

FileAPIICU 76ICU 77
locid.hstatic Locale icu::Locale::createFromName(StringPiece)(missing)Internal
measunit.hMeasureUnit icu::MeasureUnit::withConstantDenominator(uint64_t, UErrorCode&) const(missing)Draft
ICU 77
measunit.hstatic MeasureUnit icu::MeasureUnit::getPortionPer1E9()(missing)Draft
ICU 77
measunit.hstatic MeasureUnit* icu::MeasureUnit::createPortionPer1E9(UErrorCode&)(missing)Draft
ICU 77
measunit.huint64_t icu::MeasureUnit::getConstantDenominator(UErrorCode&) const(missing)Draft
ICU 77
messageformat2_data_model.hBuilder& icu::message2::MFDataModel::Builder::addSelector(VariableName&&, UErrorCode&)(missing)Internal
ICU 75
resbund.hLocale icu::ResourceBundle::getLocale(ULocDataLocaleType, UErrorCode&) const(missing)Stable
ICU 2.8
timezone.hstatic UnicodeString icu::TimeZone::getEquivalentID(const UnicodeString&, int32_t)(missing)Stable
ICU 2.0
uset.hstd::u16string U_HEADER_ONLY_NAMESPACE::USetElementIterator::operator* () const(missing)Draft
ICU 77
utypes.henum UErrorCode::U_MF_BAD_OPTION(missing)Internal
ICU 77

(jump back to top)

Other existing drafts in ICU 77

FileAPIICU 76ICU 77
coll.hauto icu::Collator::equal_to() constDraft
ICU 76
coll.hauto icu::Collator::greater() constDraft
ICU 76
coll.hauto icu::Collator::greater_equal() constDraft
ICU 76
coll.hauto icu::Collator::less() constDraft
ICU 76
coll.hauto icu::Collator::less_equal() constDraft
ICU 76
coll.hauto icu::Collator::not_equal_to() constDraft
ICU 76
measfmt.hvoid icu::MeasureFormat::parseObject(const UnicodeString&, Formattable&, ParsePosition&) constDraft
ICU 53
measunit.hstatic MeasureUnit icu::MeasureUnit::getLightSpeed()Draft
ICU 76
measunit.hstatic MeasureUnit icu::MeasureUnit::getNight()Draft
ICU 76
measunit.hstatic MeasureUnit* icu::MeasureUnit::createLightSpeed(UErrorCode&)Draft
ICU 76
measunit.hstatic MeasureUnit* icu::MeasureUnit::createNight(UErrorCode&)Draft
ICU 76
uchar.henum UIndicConjunctBreak::U_INCB_CONSONANTDraft
ICU 76
uchar.henum UIndicConjunctBreak::U_INCB_EXTENDDraft
ICU 76
uchar.henum UIndicConjunctBreak::U_INCB_LINKERDraft
ICU 76
uchar.henum UIndicConjunctBreak::U_INCB_NONEDraft
ICU 76
uchar.henum UProperty::UCHAR_INDIC_CONJUNCT_BREAKDraft
ICU 76
uchar.henum UProperty::UCHAR_MODIFIER_COMBINING_MARKDraft
ICU 76
uniset.hU_HEADER_NESTED_NAMESPACE::USetCodePoints icu::UnicodeSet::codePoints() constDraft
ICU 76
uniset.hU_HEADER_NESTED_NAMESPACE::USetRanges icu::UnicodeSet::ranges() constDraft
ICU 76
uniset.hU_HEADER_NESTED_NAMESPACE::USetStrings icu::UnicodeSet::strings() constDraft
ICU 76
unistr.hUNISTR_FROM_STRING_EXPLICIT icu::UnicodeString::UnicodeString(const S&)Draft
ICU 76
unistr.hUnicodeString& icu::UnicodeString::append(const S&)Draft
ICU 76
unistr.hUnicodeString& icu::UnicodeString::operator+=(const S&)Draft
ICU 76
unistr.hUnicodeString& icu::UnicodeString::operator=(const S&)Draft
ICU 76
unistr.hbool icu::UnicodeString::operator!=(const S&) constDraft
ICU 76
unistr.hbool icu::UnicodeString::operator==(const S&) constDraft
ICU 76
unistr.hicu::UnicodeString::operator std::u16string_view() constDraft
ICU 76
unistr.hicu::UnicodeString::operator std::wstring_view() constDraft
ICU 76
unistr.hstatic UnicodeString icu::UnicodeString::readOnlyAlias(const S&)Draft
ICU 76
unistr.hstatic UnicodeString icu::UnicodeString::readOnlyAlias(const UnicodeString&)Draft
ICU 76
uregex.henum URegexpFlag::UREGEX_CANON_EQDraft
ICU 2.4
uset.hCodePointRange U_HEADER_ONLY_NAMESPACE::USetRangeIterator::operator* () constDraft
ICU 76
uset.hUSetCodePointIterator & U_HEADER_ONLY_NAMESPACE::USetCodePointIterator::operator++()Draft
ICU 76
uset.hUSetCodePointIterator U_HEADER_ONLY_NAMESPACE::USetCodePointIterator::operator++(int)Draft
ICU 76
uset.hUSetCodePointIterator U_HEADER_ONLY_NAMESPACE::USetCodePoints::begin() constDraft
ICU 76
uset.hUSetCodePointIterator U_HEADER_ONLY_NAMESPACE::USetCodePoints::end() constDraft
ICU 76
uset.hUSetRangeIterator & U_HEADER_ONLY_NAMESPACE::USetRangeIterator::operator++()Draft
ICU 76
uset.hUSetRangeIterator U_HEADER_ONLY_NAMESPACE::USetRangeIterator::operator++(int)Draft
ICU 76
uset.hUSetRangeIterator U_HEADER_ONLY_NAMESPACE::USetRanges::begin() constDraft
ICU 76
uset.hUSetRangeIterator U_HEADER_ONLY_NAMESPACE::USetRanges::end() constDraft
ICU 76
uset.hUSetStringIterator & U_HEADER_ONLY_NAMESPACE::USetStringIterator::operator++()Draft
ICU 76
uset.hUSetStringIterator U_HEADER_ONLY_NAMESPACE::USetStringIterator::operator++(int)Draft
ICU 76
uset.hUSetStringIterator U_HEADER_ONLY_NAMESPACE::USetStrings::begin() constDraft
ICU 76
uset.hUSetStringIterator U_HEADER_ONLY_NAMESPACE::USetStrings::end() constDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetCodePointIterator::USetCodePointIterator(const USetCodePointIterator&)=defaultDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetCodePoints::USetCodePoints(const USet*)Draft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetCodePoints::USetCodePoints(const USetCodePoints&)=defaultDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetRangeIterator::USetRangeIterator(const USetRangeIterator&)=defaultDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetRanges::USetRanges(const USet*)Draft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetRanges::USetRanges(const USetRanges&)=defaultDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetStringIterator::USetStringIterator(const USetStringIterator&)=defaultDraft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetStrings::USetStrings(const USet*)Draft
ICU 76
uset.hU_HEADER_ONLY_NAMESPACE::USetStrings::USetStrings(const USetStrings&)=defaultDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetCodePointIterator::operator!=(const USetCodePointIterator&) constDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetCodePointIterator::operator==(const USetCodePointIterator&) constDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetRangeIterator::operator!=(const USetRangeIterator&) constDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetRangeIterator::operator==(const USetRangeIterator&) constDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetStringIterator::operator!=(const USetStringIterator&) constDraft
ICU 76
uset.hbool U_HEADER_ONLY_NAMESPACE::USetStringIterator::operator==(const USetStringIterator&) constDraft
ICU 76
uset.hUChar32 U_HEADER_ONLY_NAMESPACE::USetCodePointIterator::operator* () constDraft
ICU 76
uset.hconst UChar* uset_getString(const USet*, int32_t, int32_t*)Draft
ICU 76
uset.hint32_t uset_getStringCount(const USet*)Draft
ICU 76
uset.hstd::u16string_view U_HEADER_ONLY_NAMESPACE::USetStringIterator::operator* () constDraft
ICU 76

(jump back to top)

Signature Simplifications

This section shows cases where the signature was "simplified" for the sake of comparison. The simplified form is in bold, followed by all possible variations in "original" form.

(jump back to top)

Contents generated by StableAPI tool on Wed Feb 19 16:09:53 PST 2025
Copyright © 2017 and later: Unicode, Inc. and others.
License & terms of use: http://www.unicode.org/copyright.html