You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[STLExtras] Add out-of-line definition of friend operator== for C++20 (#72348)
The last attempt at #72220 was
reverted by
94d6699
because it breaks C++20 build in clang-17 and before.
This is a workaround of
#70210 and unblocks
#72213 which rectifies
rewriting template operator and thus introduces new breakages.
Moving the function definition out of the class makes clang find a
matching `operator!=` for the `operator==`. This makes clang not rewrite
the `operator==` with reversed args. Hence, the ambiguity is resolved.
The final plan, when #70210
is fixed, is to move these back to inline definition or even convert to
a member template operator. This should not be urgent and could even
wait for a major clang release including
#72213
0 commit comments