xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGenCXX/pragma-pack.cpp (revision f4a2713ac843a11c696ec80c0a5e3e5d80b4d338)
1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 %s -triple=i686-apple-darwin10 -emit-llvm -o - | FileCheck %s
2*f4a2713aSLionel Sambuc 
3*f4a2713aSLionel Sambuc struct Base {
4*f4a2713aSLionel Sambuc   virtual ~Base();
5*f4a2713aSLionel Sambuc   int x;
6*f4a2713aSLionel Sambuc };
7*f4a2713aSLionel Sambuc 
8*f4a2713aSLionel Sambuc #pragma pack(1)
9*f4a2713aSLionel Sambuc struct Sub : virtual Base {
10*f4a2713aSLionel Sambuc   char c;
11*f4a2713aSLionel Sambuc };
12*f4a2713aSLionel Sambuc 
13*f4a2713aSLionel Sambuc // CHECK: %struct.Sub = type <{ i32 (...)**, i8, %struct.Base }>
f(Sub *)14*f4a2713aSLionel Sambuc void f(Sub*) { }
15*f4a2713aSLionel Sambuc 
16*f4a2713aSLionel Sambuc static int i[sizeof(Sub) == 13 ? 1 : -1];
17