| // RUN: %llvmgcc -w -S %s -o - | llvm-as -o /dev/null | |
| typedef struct BF { | |
| int A : 1; | |
| char B; | |
| int C : 13; | |
| } BF; | |
| char *test1(BF *b) { | |
| return &b->B; // Must be able to address non-bitfield | |
| } | |
| void test2(BF *b) { // Increment and decrement operators | |
| b->A++; | |
| --b->C; | |
| } | |
| void test3(BF *b) { | |
| b->C = 12345; // Store | |
| } | |
| int test4(BF *b) { | |
| return b->C; // Load | |
| } | |
| void test5(BF *b, int i) { // array ref | |
| b[i].C = 12345; | |
| } | |