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 }
|
// prms-id: 3068
|
// prms-id: 3068
|
|
|
extern "C" int printf(const char *, ...);
|
extern "C" int printf(const char *, ...);
|
extern "C" void exit(int);
|
extern "C" void exit(int);
|
|
|
class LB {
|
class LB {
|
public:
|
public:
|
virtual int test() { return 0; }
|
virtual int test() { return 0; }
|
virtual ~LB() { }
|
virtual ~LB() { }
|
protected:
|
protected:
|
LB() { }
|
LB() { }
|
};
|
};
|
|
|
class RRB {
|
class RRB {
|
public:
|
public:
|
virtual ~RRB() { }
|
virtual ~RRB() { }
|
virtual void test2(int a) { }
|
virtual void test2(int a) { }
|
};
|
};
|
|
|
class RR : public RRB {
|
class RR : public RRB {
|
public:
|
public:
|
virtual ~RR() { }
|
virtual ~RR() { }
|
};
|
};
|
|
|
class RL {
|
class RL {
|
public:
|
public:
|
virtual void real(int a) {
|
virtual void real(int a) {
|
printf("RL::real\n");
|
printf("RL::real\n");
|
}
|
}
|
};
|
};
|
|
|
|
|
class R : public RL, public RR {
|
class R : public RL, public RR {
|
public:
|
public:
|
virtual void test3(int a) { }
|
virtual void test3(int a) { }
|
virtual void test2(int a) { }
|
virtual void test2(int a) { }
|
};
|
};
|
|
|
class L : public LB {
|
class L : public LB {
|
};
|
};
|
|
|
class C : public L, public R {
|
class C : public L, public R {
|
public:
|
public:
|
C() { }
|
C() { }
|
virtual ~C() {
|
virtual ~C() {
|
printf("C::~C\n");
|
printf("C::~C\n");
|
exit(1);
|
exit(1);
|
}
|
}
|
virtual void real(int a) {
|
virtual void real(int a) {
|
printf("RL::real\n");
|
printf("RL::real\n");
|
}
|
}
|
};
|
};
|
|
|
int main() {
|
int main() {
|
C& bb = *new C;
|
C& bb = *new C;
|
R& mv = bb;
|
R& mv = bb;
|
bb.real(0);
|
bb.real(0);
|
mv.real(0);
|
mv.real(0);
|
return 0;
|
return 0;
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.