xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGenCXX/microsoft-abi-alignment-fail.cpp (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1  // RUN: %clang_cc1 -fno-rtti -emit-llvm -triple=i686-pc-win32 -o - %s  2>/dev/null | FileCheck %s
2  // RUN: %clang_cc1 -fno-rtti -emit-llvm -triple=x86_64-pc-win32 -o - %s  2>/dev/null | FileCheck %s -check-prefix CHECK-X64
3  
4  struct B { char a; };
5  struct A : virtual B {} a;
6  
7  // The <> indicate that the pointer is packed, which is required to support
8  // microsoft layout in 32 bit mode, but not 64 bit mode.
9  // CHECK: %struct.A = type <{ i32*, %struct.B }>
10  // CHECK-X64: %struct.A = type { i32*, %struct.B }
11