diff --git a/icu4c/source/i18n/number_fluent.cpp b/icu4c/source/i18n/number_fluent.cpp index 0ce01c854cae..b6150ddc7830 100644 --- a/icu4c/source/i18n/number_fluent.cpp +++ b/icu4c/source/i18n/number_fluent.cpp @@ -472,9 +472,9 @@ LocalizedNumberFormatter::LocalizedNumberFormatter(const NFS& other) LocalizedNumberFormatter::LocalizedNumberFormatter(LocalizedNumberFormatter&& src) noexcept : LNF(static_cast&&>(src)) {} -LocalizedNumberFormatter::LocalizedNumberFormatter(NFS&& src) noexcept - : NFS(std::move(src)) { - lnfMoveHelper(std::move(static_cast(src))); +LocalizedNumberFormatter::LocalizedNumberFormatter(NFS&& src) noexcept { + lnfMoveHelper(static_cast(src)); // Call before moving src + static_cast&>(*this) = std::move(src); // Move after } LocalizedNumberFormatter& LocalizedNumberFormatter::operator=(const LNF& other) {