URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 301 |
Rev 338 |
// PR c++/3331: just because 'this' is readonly and bars[0].b is readonly
|
// PR c++/3331: just because 'this' is readonly and bars[0].b is readonly
|
// doesn't mean that the result of the member reference is readonly.
|
// doesn't mean that the result of the member reference is readonly.
|
|
|
struct foo
|
struct foo
|
{
|
{
|
int a;
|
int a;
|
|
|
struct bar
|
struct bar
|
{ int foo::* b ;};
|
{ int foo::* b ;};
|
|
|
static const bar bars[];
|
static const bar bars[];
|
|
|
void bad ()
|
void bad ()
|
{
|
{
|
this->*(bars[0].b) = 42; // { dg-bogus "read-only" "" }
|
this->*(bars[0].b) = 42; // { dg-bogus "read-only" "" }
|
}
|
}
|
};
|
};
|
|
|
const foo::bar foo::bars[] = { { &foo::a } };
|
const foo::bar foo::bars[] = { { &foo::a } };
|
|
|
int main ()
|
int main ()
|
{ }
|
{ }
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.