------- Comment #14 from rguenth at gcc dot gnu dot org  2009-04-07 16:04 
-------
With a small testcase it works:

struct Y {};
struct X {
  Y y;
  float real;
  float imag;
};

struct X __attribute__((noinline))
foo (float *p)
{
  struct X x;
  x.real = p[0];
  x.imag = p[1];
  return x;
}
extern "C" void abort (void);
int main()
{
  float a[2] = { 1., 2. };
  struct X x = foo(a);
  if (x.real != 1.
      || x.imag != 2.)
    abort ();
  return 0;
}


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|4.1.3 4.2.5 4.3.3 4.4.0     |4.3.3 4.4.0


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

Reply via email to