OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [g++.old-deja/] [g++.other/] [inline20.C] - Diff between revs 305 and 338

Only display areas with differences | Details | Blame | View Log

Rev 305 Rev 338
// { dg-do assemble  }
// { dg-do assemble  }
struct A {
struct A {
  int a, b, c, d;
  int a, b, c, d;
};
};
inline void foo (int, A &);
inline void foo (int, A &);
struct D {
struct D {
};
};
struct E: public D {
struct E: public D {
  void f (A &y)
  void f (A &y)
  {
  {
    foo (1, y);
    foo (1, y);
  }
  }
};
};
struct F: public D {
struct F: public D {
  void f (A &y)
  void f (A &y)
  {
  {
    foo (2, y);
    foo (2, y);
  }
  }
};
};
E *d;
E *d;
F *e;
F *e;
inline int baz (int y)
inline int baz (int y)
{
{
  A a;
  A a;
  if (y) {
  if (y) {
    d->f (a);
    d->f (a);
  } else {
  } else {
    e->f (a);
    e->f (a);
  }
  }
  return 0;
  return 0;
}
}
inline void foo (int y, A &z)
inline void foo (int y, A &z)
{
{
  z.a = baz (y);
  z.a = baz (y);
  z.b = baz (y);
  z.b = baz (y);
  z.c = baz (y);
  z.c = baz (y);
  z.d = baz (y);
  z.d = baz (y);
}
}
struct G {
struct G {
  E a;
  E a;
  F b;
  F b;
  void bar (A &);
  void bar (A &);
};
};
void G::bar(A &y)
void G::bar(A &y)
{
{
  a.f(y);
  a.f(y);
  b.f(y);
  b.f(y);
}
}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.