[Bug c/104510] [9/10/11 Regression] ICE: 'verify_gimple' failed: mismatching comparison operand types in verify_gimple_in_seq()

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Feb 19 08:03:19 GMT 2022


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

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

https://gcc.gnu.org/g:3a543eb7982ae6ccfb6ea2027ad4c71d5fcaf92a

commit r11-9608-g3a543eb7982ae6ccfb6ea2027ad4c71d5fcaf92a
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Wed Feb 16 09:25:55 2022 +0100

    c-family: Fix up shorten_compare for decimal vs. non-decimal float
comparison [PR104510]

    The comment in shorten_compare says:
      /* If either arg is decimal float and the other is float, fail.  */
    but the callers of shorten_compare don't expect anything like failure
    as a possibility from the function, callers require that the function
    promotes the operands to the same type, whether the original selected
    *restype_ptr one or some shortened.
    So, if we choose not to shorten, we should still promote to the original
    *restype_ptr.

    2022-02-16  Jakub Jelinek  <jakub@redhat.com>

            PR c/104510
            * c-common.c (shorten_compare): Convert original arguments to
            the original *restype_ptr when mixing binary and decimal float.

            * gcc.dg/dfp/pr104510.c: New test.

    (cherry picked from commit 6e74122f0de6748b3fd0ed9183090cd7c61fb53e)


More information about the Gcc-bugs mailing list