URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 305 |
Rev 384 |
// { dg-do run }
|
// { dg-do run }
|
#include
|
#include
|
|
|
int state;
|
int state;
|
int fail;
|
int fail;
|
|
|
class A {
|
class A {
|
public:
|
public:
|
A() {
|
A() {
|
if (++state != 1)
|
if (++state != 1)
|
fail = 1;
|
fail = 1;
|
}
|
}
|
virtual int foo() {
|
virtual int foo() {
|
if (++state != 2)
|
if (++state != 2)
|
fail = 1;
|
fail = 1;
|
return 0;
|
return 0;
|
}
|
}
|
virtual ~A() {
|
virtual ~A() {
|
if (++state != 3)
|
if (++state != 3)
|
fail = 1;
|
fail = 1;
|
}
|
}
|
};
|
};
|
|
|
A* bar() {
|
A* bar() {
|
return new A;
|
return new A;
|
}
|
}
|
|
|
int main() {
|
int main() {
|
A *aptr = bar();
|
A *aptr = bar();
|
aptr->foo();
|
aptr->foo();
|
if (dynamic_cast (aptr) != aptr)
|
if (dynamic_cast (aptr) != aptr)
|
fail = 1;
|
fail = 1;
|
if (typeid (*aptr) != typeid (A))
|
if (typeid (*aptr) != typeid (A))
|
fail = 1;
|
fail = 1;
|
delete aptr;
|
delete aptr;
|
if (++state != 4)
|
if (++state != 4)
|
fail = 1;
|
fail = 1;
|
return fail;
|
return fail;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.