https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94590

--- Comment #2 from Giuseppe D'Angelo <dangelog at gmail dot com> ---
A direct effect of this in SFINAE contexts seems to be the implementation of
P0608 (A sane variant converting constructor) that has landed in libstdc++ in
10.1.

This code:

    struct S {
        S(long double) {}
    };
    std::variant<double, S> v;
    v = 1.0L;
    assert(v.index() == 1);

fails the assert if long double is the same as double; works otherwise.

Reply via email to