1// RUN: %clang_cc1 -emit-llvm -o - %s | FileCheck %s 2 3typedef unsigned char uint8_t; 4typedef unsigned short uint16_t; 5typedef unsigned int uint32_t; 6 7#pragma pack(push, 1) 8typedef struct 9{ 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 18 31 return sizeof(bar); 32} 33