Date: Wed, 10 Dec 2025 15:40:32 +0100
On 12/8/25 23:56, Frederick Virchanza Gotham via Std-Proposals wrote:
> I reply in series below to Jeremy and Bjorn.
Please respond in separate mails in the future. Otherwise it becomes
difficult to follow the discussions.
> Hmmm.... I don't consider it to be a "core language change" given that
> the special behaviour only applies to one standard library type, and
> the special behaviour won't be seen in any user-defined classes. But I
> realise I'm teetering at the boundary between "library change" and
> "core library change".
This change has implications for other standard facilities, because
the chimeric pointer does not really behave like a (smart) pointer.
For example, any facility using the INVOKE requirement [func.require]
fails, such as std::invoke(&Editor::Edit, ptr), where ptr is a
chimeric_ptr. As another example, std::to_address(ptr) fails with a
confusing error message.
> I reply in series below to Jeremy and Bjorn.
Please respond in separate mails in the future. Otherwise it becomes
difficult to follow the discussions.
> Hmmm.... I don't consider it to be a "core language change" given that
> the special behaviour only applies to one standard library type, and
> the special behaviour won't be seen in any user-defined classes. But I
> realise I'm teetering at the boundary between "library change" and
> "core library change".
This change has implications for other standard facilities, because
the chimeric pointer does not really behave like a (smart) pointer.
For example, any facility using the INVOKE requirement [func.require]
fails, such as std::invoke(&Editor::Edit, ptr), where ptr is a
chimeric_ptr. As another example, std::to_address(ptr) fails with a
confusing error message.
Received on 2025-12-10 14:40:35
