YouCompleteMe/cpp/llvm/tools/clang/test/CodeGen/2007-09-12-PragmaPack.c
Strahinja Val Markovic 1f51a89d39 Adding more llvm/clang files
These were ignored by git accidentally. We want ALL OF THEM since they all came
in the llvm/clang source distribution.
2012-07-05 17:55:45 -07:00

33 lines
600 B
C

// RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck %s
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#pragma pack(push, 1)
typedef struct
{
uint32_t a;
} foo;
typedef struct {
uint8_t major;
uint8_t minor;
uint16_t build;
} VERSION;
typedef struct {
uint8_t a[5];
VERSION version;
uint8_t b;
foo d;
uint32_t guard;
} bar;
#pragma pack(pop)
unsigned barsize(void) {
// CHECK: ret i32 18
return sizeof(bar);
}