------- Comment #1 from rguenth at gcc dot gnu dot org  2009-11-01 14:05 -------
Confirmed.  The IL difference doesn't hint at a reason.

_Complex float:

foo ()
{
  complex float f;
  complex float D.1250;
  float D.1249;

<bb 2>:
  [t2.c : 5] D.1249_2 = REALPART_EXPR <f_1(D)>;
  [t2.c : 5] f_3 = COMPLEX_EXPR <D.1249_2, 0.0>;
  [t2.c : 6] D.1250_4 = f_3;
  return D.1250_4;

float:

foo ()
{
  complex float f;
  float D.1250;
  float D.1249;

<bb 2>:
  [t2.c : 5] D.1249_2 = REALPART_EXPR <f_1(D)>;
  [t2.c : 5] f_3 = COMPLEX_EXPR <D.1249_2, 0.0>;
  [t2.c : 6] D.1250_4 = REALPART_EXPR <f_3>;
  return D.1250_4;


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|c                           |middle-end
     Ever Confirmed|0                           |1
           Keywords|                            |diagnostic
   Last reconfirmed|0000-00-00 00:00:00         |2009-11-01 14:05:49
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41895

Reply via email to