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

--- Comment #4 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:694613a7f9adfa9c87e733adc63839c8801f2b5c

commit r15-5442-g694613a7f9adfa9c87e733adc63839c8801f2b5c
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Tue Nov 19 10:26:44 2024 +0100

    expand: Fix up ICE on VCE from _Complex types to _BitInt [PR117458]

    extract_bit_field can't handle extraction of non-mode precision
    from complex mode operands which don't live in memory, e.g. gen_lowpart
    crashes on those.
    The following patch in that case defers the extract_bit_field call
    until op0 is forced into memory.

    2024-11-19  Jakub Jelinek  <ja...@redhat.com>

            PR middle-end/117458
            * expr.cc (expand_expr_real_1) <case VIEW_CONVERT_EXPR>: Don't
            call extract_bit_field if op0 has complex mode and isn't a MEM,
            instead first force op0 into memory and then call
extract_bit_field.

            * gcc.dg/bitint-116.c: New test.

Reply via email to