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

--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

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

commit r15-6907-gf263f2d525eb9a1b60c2a356eb64262819b6bab0
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Wed Jan 15 08:46:48 2025 +0100

    c++: Fix ICEs with large initializer lists or ones including #embed
[PR118124]

    The following testcases ICE due to RAW_DATA_CST not being handled where it
    should be during ck_list conversions.

    The last 2 testcases started ICEing with r15-6339 committed yesterday
    (speedup of large initializers), the first two already with r15-5958
    (#embed optimization for C++).

    For conversion to initializer_list<unsigned char> or char/signed char
    we can optimize and keep RAW_DATA_CST with adjusted type if we report
    narrowing errors if needed, for others this converts each element
    separately.

    2025-01-15  Jakub Jelinek  <ja...@redhat.com>

            PR c++/118124
            * call.cc (convert_like_internal): Handle RAW_DATA_CST in
            ck_list handling.  Formatting fixes.

            * g++.dg/cpp/embed-15.C: New test.
            * g++.dg/cpp/embed-16.C: New test.
            * g++.dg/cpp0x/initlist-opt3.C: New test.
            * g++.dg/cpp0x/initlist-opt4.C: New test.

Reply via email to