URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 154 |
Rev 816 |
// { dg-do run }
|
// { dg-do run }
|
// Source: Neil Booth, from PR #111.
|
// Source: Neil Booth, from PR #111.
|
|
|
class A
|
class A
|
{
|
{
|
public :
|
public :
|
int i;
|
int i;
|
};
|
};
|
|
|
class B : virtual public A
|
class B : virtual public A
|
{
|
{
|
};
|
};
|
|
|
class C : virtual public A
|
class C : virtual public A
|
{
|
{
|
};
|
};
|
|
|
class D : public B, public C
|
class D : public B, public C
|
{
|
{
|
public :
|
public :
|
int f(void);
|
int f(void);
|
int g(void);
|
int g(void);
|
};
|
};
|
|
|
int D::f(void)
|
int D::f(void)
|
{
|
{
|
return B::i;
|
return B::i;
|
}
|
}
|
|
|
int D::g(void)
|
int D::g(void)
|
{
|
{
|
return this->B::i;
|
return this->B::i;
|
}
|
}
|
|
|
D d;
|
D d;
|
extern "C" void abort (void);
|
extern "C" void abort (void);
|
|
|
int main(void)
|
int main(void)
|
{
|
{
|
d.C::i=325;
|
d.C::i=325;
|
|
|
if (d.f() != d.B::i || d.f() != d.g())
|
if (d.f() != d.B::i || d.f() != d.g())
|
abort ();
|
abort ();
|
|
|
return 0;
|
return 0;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.