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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [g++.dg/] [init/] [dtor1.C] - Diff between revs 154 and 816

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

Rev 154 Rev 816
// { dg-do run }
// { dg-do run }
extern "C" void abort ();
extern "C" void abort ();
int d = 5;
int d = 5;
struct B
struct B
{
{
  int x;
  int x;
  B (int i) : x (i) { }
  B (int i) : x (i) { }
  ~B () { if (d-- != x) abort (); }
  ~B () { if (d-- != x) abort (); }
};
};
struct C1 : public B {
struct C1 : public B {
  C1 (int i) : B (i) {}
  C1 (int i) : B (i) {}
};
};
struct C2 : public B {
struct C2 : public B {
  C2 (int i) : B (i) {}
  C2 (int i) : B (i) {}
};
};
struct D : public B {
struct D : public B {
  D (int i) : B (i) {}
  D (int i) : B (i) {}
};
};
struct E : public B {
struct E : public B {
  E (int i) : B (i) {}
  E (int i) : B (i) {}
};
};
struct A
struct A
  : public C1, C2, virtual public D, virtual public E
  : public C1, C2, virtual public D, virtual public E
{
{
  A () : D (0), E (1), C1 (2), C2 (3), x1(4), x2(5) {}
  A () : D (0), E (1), C1 (2), C2 (3), x1(4), x2(5) {}
  B x1;
  B x1;
  B x2;
  B x2;
};
};
int main ()
int main ()
{
{
  A a;
  A a;
  return 0;
  return 0;
}
}
 
 

powered by: WebSVN 2.1.0

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