33 lines · c
1// RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck %s2 3typedef unsigned char uint8_t;4typedef unsigned short uint16_t;5typedef unsigned int uint32_t;6 7#pragma pack(push, 1)8typedef struct9{10 uint32_t a;11} foo;12 13typedef struct {14 uint8_t major;15 uint8_t minor;16 uint16_t build;17} VERSION;18 19typedef struct {20 uint8_t a[5];21 VERSION version;22 uint8_t b;23 foo d;24 uint32_t guard;25} bar;26#pragma pack(pop)27 28 29unsigned barsize(void) {30 // CHECK: ret i32 1831 return sizeof(bar);32}33