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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|uninit-17.c no longer emits |[13/14/15 Regression]
                   |expected warning on         |uninit-17.c no longer emits
                   |arm-none-eabi               |expected warning on arm
                   |                            |soft-float
             Blocks|                            |24639
         Depends on|                            |18501
           Keywords|                            |testsuite-fail
   Target Milestone|---                         |13.4

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
The difference between GCC 12 and 13 is:
GCC 13:
  REALPART_EXPR <<retval>> = 1.0e+0;
  IMAGPART_EXPR <<retval>> = 0.0;
GCC 12:
  <retval> = __complex__ (1.0e+0, 0.0);


In complex lowering which was done by r13-1762-gf9d4c3b45c5ed5 .

Hard float vs soft float difference is how the return is handled.

I am 100% sure this is basically a dup of bug 18501 (ccp in the end removes the
uninitialized usage) but only happens with soft-float due to the way complex
returns are handled.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=18501
[Bug 18501] [11/12/13/14/15 Regression] Missing 'used uninitialized' warning
(CCP)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24639
[Bug 24639] [meta-bug] bug to track all Wuninitialized issues

Reply via email to