llvm-project/llvm/test/CFrontend/2003-09-18-BitfieldTests.c

31 lines
460 B
C
Raw Normal View History

2004-11-07 06:41:00 +08:00
// RUN: %llvmgcc -S %s -o - | llvm-as -f -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;
}