xref: /llvm-project/clang/test/CodeGenCXX/class-layout.cpp (revision d681a29ac0cb889f34ebd377eaeb48b34a1819d6)
1 // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
2 
3 // An extra byte shoudl be allocated for an empty class.
4 // CHECK: %struct.A = type { i8 }
5 struct A { } a;
6 
7 // No need to add tail padding here.
8 // CHECK: %struct.B = type { i8*, i32 }
9 struct B { void *a; int b; } b;
10 
11 // C should have a vtable pointer.
12 // CHECK: %struct.C = type { i8**, i32 }
13 struct C { virtual void f(); int a; } *c;
14