xref: /aosp_15_r20/external/clang/test/CodeGenCXX/virtual-base-ctor.cpp (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 %s -emit-llvm -triple %itanium_abi_triple -o - -O2 | opt - -S -globalopt -o - | FileCheck %s
2*67e74705SXin Li 
3*67e74705SXin Li struct B;
4*67e74705SXin Li extern B x;
5*67e74705SXin Li char y;
6*67e74705SXin Li typedef __typeof(sizeof(int)) size_t;
AA7*67e74705SXin Li struct A { int a; A() { y = ((size_t)this - (size_t)&x) / sizeof(void*); } };
8*67e74705SXin Li struct B : virtual A { void* x; };
9*67e74705SXin Li B x;
10*67e74705SXin Li 
11*67e74705SXin Li // CHECK: @y = local_unnamed_addr global i8 2
12