| Devang Patel | 6d474cd | 2007-04-10 21:43:01 +0000 | [diff] [blame] | 1 | // RUN: %llvmgxx -S %s -o /dev/null |
| 2 | extern "C" { | ||||
| 3 | |||||
| 4 | #pragma pack(push, 2) | ||||
| 5 | typedef struct ABC* abc; | ||||
| 6 | |||||
| 7 | struct ABCS { | ||||
| 8 | float red; | ||||
| 9 | float green; | ||||
| 10 | float blue; | ||||
| 11 | float alpha; | ||||
| 12 | }; | ||||
| 13 | |||||
| 14 | typedef void (*XYZ)(); | ||||
| 15 | #pragma pack(pop) | ||||
| 16 | } | ||||
| 17 | |||||
| 18 | |||||
| 19 | union ABCU { | ||||
| 20 | ABCS color; | ||||
| 21 | XYZ bg; | ||||
| 22 | }; | ||||
| 23 | |||||
| 24 | struct AData { | ||||
| 25 | ABCU data; | ||||
| 26 | }; | ||||
| 27 | |||||
| 28 | class L { | ||||
| 29 | public: | ||||
| 30 | L() {} | ||||
| 31 | L(const L& other); | ||||
| 32 | |||||
| 33 | private: | ||||
| 34 | AData fdata; | ||||
| 35 | }; | ||||
| 36 | |||||
| 37 | |||||
| 38 | L::L(const L& other) | ||||
| 39 | { | ||||
| 40 | fdata = other.fdata; | ||||
| 41 | } | ||||