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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2024-03-11
             Status|UNCONFIRMED                 |ASSIGNED
     Ever confirmed|0                           |1
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.  We gimplify

D.2427 = VIEW_CONVERT_EXPR<W>( VEC_PERM_EXPR < {v, { 0.0, 0.0, 0.0, 0.0 }} ,
{TARGET_EXPR <D.2425, <<< error >>>>, { 0.0, 0.0, 0.0, 0.0 }} , { 1, 2, 9, 0,
1, 10, 10, 8 } > )

and as we gimplify_init_constructor we bail out leaving the half gimplified
expression as

_3 = {TARGET_EXPR <D.2425, >, { 0.0, 0.0, 0.0, 0.0 }}

but up gimplify_stmt will not propagate the error further, in particular
the important caller internal_get_tmp_var has allocated the destination
SSA name but we failed to gimplify it's defintion.

I have a workaround.

Reply via email to