llvm-project/clang/test/CodeGenCXX/2007-04-05-PackedBitFieldsSmall.cpp
Eric Christopher 17db038966 Migrate:
2007-01-06-PtrMethodInit.cpp
2007-04-05-PackedBitFields-1.cpp
2007-04-05-PackedBitFieldsOverlap-2.cpp
2007-04-05-PackedBitFieldsOverlap.cpp
2007-04-05-PackedBitFieldsSmall.cpp
2007-04-05-StructPackedFieldUnpacked.cpp
2007-04-10-PackedUnion.cpp
2007-04-14-FNoBuiltin.cpp
2007-05-03-VectorInit.cpp
2007-07-29-RestrictPtrArg.cpp
2007-07-29-RestrictRefArg.cpp
2007-09-10-RecursiveTypeResolution.cpp

from llvm/test/FrontendC++ and FileCheckize where appropriate.

llvm-svn: 138134
2011-08-19 23:08:33 +00:00

28 lines
446 B
C++

// RUN: %clang_cc1 -emit-llvm %s -o -
#ifdef PACKED
// This is an example where size of Packed struct is smaller then
// the size of bit field type.
#define P __attribute__((packed))
#else
#define P
#endif
struct P M_Packed {
unsigned long long X:50;
unsigned Y:2;
};
struct M_Packed sM_Packed;
int testM_Packed (void) {
struct M_Packed x;
return (0 != x.Y);
}
int testM_Packed2 (void) {
struct M_Packed x;
return (0 != x.X);
}