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

--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Jakub Jelinek
<ja...@gcc.gnu.org>:

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

commit r9-9436-gdd320787b4eb11521e3ae3f9aa9504b31ee08c36
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Tue Mar 23 10:23:42 2021 +0100

    c++: Diagnose references to void in structured bindings [PR99650]

    We ICE on the following testcase, because std::tuple_element<...,...>::type
    is void and for structured bindings we therefore need to create
    void & or void && which is invalid.  We created such REFERENCE_TYPE and
    later ICEd in the middle-end.
    The following patch fixes it by diagnosing that.

    2021-03-23  Jakub Jelinek  <ja...@redhat.com>

            PR c++/99650
            * decl.c (cp_finish_decomp): Diagnose void initializers when
            using tuple_element and get.

            * g++.dg/cpp1z/decomp55.C: New test.

    (cherry picked from commit d5e379e3fe19362442b5d0ac608fb8ddf67fecd3)

Reply via email to