| // 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. | |
| struct foo | |
| { | |
| int a; | |
| struct bar | |
| { int foo::* b ;}; | |
| static const bar bars[]; | |
| void bad () | |
| { | |
| this->*(bars[0].b) = 42; // { dg-bogus "read-only" } | |
| } | |
| }; | |
| const foo::bar foo::bars[] = { { &foo::a } }; | |
| int main () | |
| { } |