-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
The meaning of == and != expressions has been altered in C++20 with the proposals P1185R2 and P2468R2, along with changes to how overload resolution is applied to them, resulting in previously valid code becoming invalid. As a result, ICU now produces error C2666 on certain overloaded functions and operators. Due to certain packages such as Qt being dependent on ICU, it also becomes infeasible to compile them.
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2468r2.html
b
c++ ..\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\cxx{fmtable} -> ..\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\objs{fmtable}
c++ ..\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\cxx{fmtable} -> ..\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\obja{fmtable}
C:\Users\wroy\Desktop\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\fmtable.cpp(59): error C2666: 'icu_65::Measure::operator ==': overloaded functions have similar conversions
C:\Users\wroy\Desktop\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\unicode/measure.h(90): note: could be 'UBool icu_65::Measure::operator ==(const icu_65::UObject &) const'
C:\Users\wroy\Desktop\echo-msvc\libicuuc-65.1.0+6\libicu/uc\unicode/stringpiece.h(242): note: or 'UBool icu_65::operator ==(const icu_65::StringPiece &,const icu_65::StringPiece &)'
C:\Users\wroy\Desktop\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\unicode/measure.h(90): note: or 'UBool icu_65::Measure::operator ==(const icu_65::UObject &) const' [synthesized expression 'y == x']
C:\Users\wroy\Desktop\echo-msvc\libicuuc-65.1.0+6\libicu/uc\unicode/stringpiece.h(242): note: or 'UBool icu_65::operator ==(const icu_65::StringPiece &,const icu_65::StringPiece &)' [synthesized expression 'y == x']
C:\Users\wroy\Desktop\echo-msvc\libicui18n-65.1.0+6\libicui18n\i18n\fmtable.cpp(59): note: while trying to match the argument list '(const icu_65::Measure, const icu_65::Measure)'
error: process cl exited with code 2CreatorSergey
Metadata
Metadata
Assignees
Labels
No labels