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 assemble }
|
// { dg-do assemble }
|
// Test that access control for types and statics works properly
|
// Test that access control for types and statics works properly
|
// with nested types.
|
// with nested types.
|
|
|
|
|
class A {
|
class A {
|
static int I1; // { dg-error "" } private
|
static int I1; // { dg-error "" } private
|
struct B1 { }; // { dg-error "" } private
|
struct B1 { }; // { dg-error "" } private
|
public:
|
public:
|
static int I2;
|
static int I2;
|
struct B2 { };
|
struct B2 { };
|
};
|
};
|
|
|
class D: public A {
|
class D: public A {
|
struct E {
|
struct E {
|
void f ();
|
void f ();
|
};
|
};
|
};
|
};
|
|
|
void D::E::f ()
|
void D::E::f ()
|
{
|
{
|
int i = I1; // { dg-error "" } within this context
|
int i = I1; // { dg-error "" } within this context
|
B1 b1; // { dg-error "" } within this context
|
B1 b1; // { dg-error "" } within this context
|
i = I2;
|
i = I2;
|
B2 b2;
|
B2 b2;
|
}
|
}
|
|
|
void f ()
|
void f ()
|
{
|
{
|
A::B1 b1; // { dg-error "" } within this context
|
A::B1 b1; // { dg-error "" } within this context
|
new A::B1; // { dg-error "" } within this context
|
new A::B1; // { dg-error "" } within this context
|
(A::B1) b1; // { dg-error "" } within this context
|
(A::B1) b1; // { dg-error "" } within this context
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.