Date: Tue, 4 Mar 2025 14:34:01 +0200
On 3/4/25 13:45, Tymi via Std-Proposals wrote:
> In your second example, the arguments are the same if:
> 1. Arguments are constexpr and implement a constexpr operator==
> 2. Are trivial and their byte layout is known at compile time
> 3. Exceptions for standard containers that can but don't have to make
> them the same, implementation defined.
>
> On Tue, 4 Mar 2025, 12:43 Tymi, <tymi.cpp_at_[hidden]
> <mailto:tymi.cpp_at_[hidden]>> wrote:
>
> Hi Ell,
>
> Well, if the function arguments change (as in your 1st example),
> then they are not the same.
> In your second example, it could be implementation defined, so, I
> don't know.
My point was that establishing argument equivalence is central to this
feature, and not something you can gloss over. Coming up with the right
set of conditions can be tricky.
> In your second example, the arguments are the same if:
> 1. Arguments are constexpr and implement a constexpr operator==
> 2. Are trivial and their byte layout is known at compile time
> 3. Exceptions for standard containers that can but don't have to make
> them the same, implementation defined.
>
> On Tue, 4 Mar 2025, 12:43 Tymi, <tymi.cpp_at_[hidden]
> <mailto:tymi.cpp_at_[hidden]>> wrote:
>
> Hi Ell,
>
> Well, if the function arguments change (as in your 1st example),
> then they are not the same.
> In your second example, it could be implementation defined, so, I
> don't know.
My point was that establishing argument equivalence is central to this
feature, and not something you can gloss over. Coming up with the right
set of conditions can be tricky.
Received on 2025-03-04 12:34:10