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

--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Jason Merrill <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:f32f7881fb0db085479525b5a23db5dabd990c3b

commit r13-7172-gf32f7881fb0db085479525b5a23db5dabd990c3b
Author: Jason Merrill <ja...@redhat.com>
Date:   Mon Apr 3 23:20:13 2023 -0400

    c++: make trait of incomplete type a permerror [PR109277]

    An incomplete type argument to several traits is specified to be undefined
    behavior in the library; since it's a compile-time property, we diagnose
    it.  But apparently some code was relying on the previous behavior of not
    diagnosing.  So let's make it a permerror.

    The assert in cxx_incomplete_type_diagnostic didn't like that, and I don't
    see the point of having the assert, so let's just remove it.

            PR c++/109277

    gcc/cp/ChangeLog:

            * semantics.cc (check_trait_type): Handle incomplete type directly.
            * typeck2.cc (cxx_incomplete_type_diagnostic): Remove assert.

    gcc/testsuite/ChangeLog:

            * g++.dg/ext/is_convertible5.C: New test.

Reply via email to