| // { dg-options "-O2" } | |
| struct BOOL { | |
| int nVal:1, bSet:1; | |
| BOOL (int i) : nVal(i!=0), bSet(1) {} | |
| }; | |
| struct Fill { | |
| void *d; | |
| Fill() : d(0) {} | |
| Fill( const Fill& ) {} | |
| }; | |
| struct SvMetaSlot { | |
| Fill aGroupId; | |
| BOOL a8; | |
| SvMetaSlot() : | |
| a8(1) {} | |
| SvMetaSlot* MakeClone() const; | |
| }; | |
| SvMetaSlot* SvMetaSlot::MakeClone() const { return new SvMetaSlot( *this ); } | |
| extern "C" void abort(void); | |
| int main() | |
| { | |
| SvMetaSlot s; SvMetaSlot s2(s); | |
| if (s.a8.bSet != s2.a8.bSet) | |
| abort (); | |
| return 0; | |
| } |