C++ Logo

STD-DISCUSSION

Advanced search

Subject: Re: C++17 std::hash disabled specializations
From: Ville Voutilainen (ville.voutilainen_at_[hidden])
Date: 2020-04-15 11:09:38


On Wed, 15 Apr 2020 at 19:05, Daniel Krügler <daniel.kruegler_at_[hidden]> wrote:

> > I would expect *correct* implementations to make the code ill-formed,
> > as those operations
> > are specified to invoke operations of the hash specialization, and
> > those operations
> > are ill-formed for a disabled hash.
>
> The working paper does not provide this guarantee. Presumably we need
> another round of "Mandating" papers to realize that.

Then the working paper is broken. The intent behind
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0513r0.pdf
and its related issues was to make these things ill-formed, portably.
They are supposed to SFINAE, and any
potential UB is unacceptable for that goal.

> That being said: I would be seriously surprised if someone can point
> to an implementation that doesn't diagnose this.

Likewise, some implementations implement the design intent correctly. :D


STD-DISCUSSION list run by std-discussion-owner@lists.isocpp.org

Older Archives on Google Groups