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 }
|
// Test of class-scope using-declaration for functions.
|
// Test of class-scope using-declaration for functions.
|
|
|
#define assert(COND) if (!(COND)) return 1
|
#define assert(COND) if (!(COND)) return 1
|
|
|
struct A {
|
struct A {
|
int f(int) { return 1; }
|
int f(int) { return 1; }
|
int f(char) { return 2; }
|
int f(char) { return 2; }
|
};
|
};
|
|
|
struct B {
|
struct B {
|
int f(double) { return 3; }
|
int f(double) { return 3; }
|
};
|
};
|
|
|
struct C : public A, public B {
|
struct C : public A, public B {
|
using A::f;
|
using A::f;
|
using B::f;
|
using B::f;
|
int f(char) { return 4; }
|
int f(char) { return 4; }
|
int f(C) { return 5; }
|
int f(C) { return 5; }
|
};
|
};
|
|
|
int main ()
|
int main ()
|
{
|
{
|
C c;
|
C c;
|
|
|
assert (c.f(1) == 1);
|
assert (c.f(1) == 1);
|
assert (c.f('a') == 4);
|
assert (c.f('a') == 4);
|
assert (c.f(2.0) == 3);
|
assert (c.f(2.0) == 3);
|
assert (c.f(c) == 5);
|
assert (c.f(c) == 5);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.