// RUN: %clang_cc1 -mms-bitfields -fsyntax-only -verify -triple x86_64-apple-darwin9 %s | |
// expected-no-diagnostics | |
// The -mms-bitfields commandline parameter should behave the same | |
// as the ms_struct attribute. | |
struct | |
{ | |
int a : 1; | |
short b : 1; | |
} t; | |
// MS pads out bitfields between different types. | |
static int arr[(sizeof(t) == 8) ? 1 : -1]; | |
#pragma pack (push,1) | |
typedef unsigned int UINT32; | |
struct Inner { | |
UINT32 A : 1; | |
UINT32 B : 1; | |
UINT32 C : 1; | |
UINT32 D : 30; | |
} Inner; | |
#pragma pack (pop) | |
static int arr2[(sizeof(Inner) == 8) ? 1 : -1]; |