Jeff Garland wrote:
On Fri, Feb 17, 2023 at 11:01 AM Peter Dimov via Boost
mailto:boost@lists.boost.org > wrote: Andrey Semashev wrote:
On 2/17/23 19:17, Jeff Garland via Boost wrote:
rush to deliver spaceship broke some code
So what? Progress can't be made without *some* mistakes -- as you should know, there are a lot of complicated cases. The fixes for that breakage weren't difficult.
I wouldn't say so. We still haven't fixed Boost.Operators (not for the lack of trying), which still remains officially broken in C++20.
https://github.com/boostorg/utility/issues/65
In fact, this very issue is the reason I'm hesitant upgrading my projects to C++20 and beyond.
Seconded.
https://github.com/boostorg/function/issues/45
C++23 makes it somewhat better, but doesn't fix everything.
hmm well it either fixes it or it doesn't -- not sure, but this was applied as a DR to C++20 so we shouldn't have to wait for 23.
As I said, it fixes some cases, but not others. This whole idea of x == y necessarily being equivalent to y == x in the heterogeneous case (in C++ code) is misguided, but the rewritten candidate being preferred to the non-rewritten one when better match is just... You'd think the committee wouldn't be so eager to deliberately break code. "This code was already broken!" Yeah, right. Very nice of you to decide that for me.