This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/85955] ICE in fold_convert_loc, at fold-const.c:2408


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
          Component|c                           |middle-end
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot gnu.org

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mine as well.  We are gimplifying

3791          if (!update_call_from_tree (gsi, result))
3792            gimplify_and_update_call_from_tree (gsi, result);
3793          return true;
(gdb) p debug_generic_expr (result)
*sinx_3(D) = IMAGPART_EXPR <SAVE_EXPR <__builtin_cexpi (x_2(D))>>;, *cosx_4(D)
= REALPART_EXPR <SAVE_EXPR <__builtin_cexpi (x_2(D))>>;

and as part of that failing the store because of the arg mismatch.  This is
because gimple_builtin_call_types_compatible_p uses useless_type_conversion_p
and double * and double ** do not require a conversion in GIMPLE.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]