(<https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2468r2.html> "The
Equality Operator You Are Looking For"), as now implemented by Clang 16 trunk
since
<38b9d313e6>
"[C++20][Clang] P2468R2 The Equality Operator You Are Looking For", and which
started to make my --with-latest-c++ build fail with
> workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform.cpp:189:22: error: invalid operands to binary expression ('const CPDF_Dictionary *' and 'RetainPtr<const CPDF_Object>')
> if (pAnnotDict == pDict)
> ~~~~~~~~~~ ^ ~~~~~
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:227:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const char *' for 1st argument
> inline bool operator==(const char* lhs, const ByteString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:227:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const ByteString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:230:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'ByteStringView' (aka 'StringViewTemplate<char>') for 1st argument
> inline bool operator==(ByteStringView lhs, const ByteString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:230:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const ByteString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:285:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const wchar_t *' for 1st argument
> inline bool operator==(const wchar_t* lhs, const WideString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:285:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const WideString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:288:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'WideStringView' (aka 'StringViewTemplate<wchar_t>') for 1st argument
> inline bool operator==(WideStringView lhs, const WideString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:288:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const WideString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxge/cfx_color.h:61:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const CFX_Color' for 1st argument
> inline bool operator==(const CFX_Color& c1, const CFX_Color& c2) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/string_view_template.h:277:13: note: candidate template ignored: could not match 'StringViewTemplate' against 'RetainPtr'
> inline bool operator==(const T* lhs, const StringViewTemplate<T>& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/string_view_template.h:277:13: note: candidate template ignored: could not match 'const T *' against 'RetainPtr<const CPDF_Object>'
> workdir/UnpackedTarball/pdfium/core/fxcrt/observed_ptr.h:98:13: note: candidate template ignored: could not match 'ObservedPtr' against 'RetainPtr'
> inline bool operator==(const U* lhs, const ObservedPtr<T>& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/observed_ptr.h:98:13: note: candidate template ignored: could not match 'const U *' against 'RetainPtr<const CPDF_Object>'
Change-Id: Ibef9e5515dc466431741220adebec9c6e20850e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141154
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>