https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114018
Jiang An <de34 at live dot cn> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |de34 at live dot cn
--- Comment #12 from Jiang An <de34 at live dot cn> ---
(In reply to Jakub Jelinek from comment #11)
> But what about following:
> #include <cmath>
> #include <stdfloat>
>
> auto f = static_cast<std::float128_t (*)(std::float128_t, long
> double)>(&std::nexttoward);
>
> This doesn't call std::nexttoward(std::float128_t, long double), just checks
> if it is defined.
The well-formedness is currently unspecified because std::nexttoward is not
addressable (see [namespace.std]).
I think such conversion should be ill-formed and libstdc++ is currently doing
the right thing. No change needs to be done.