| 1 | // RUN: %clang_cc1 %s -emit-llvm -triple %itanium_abi_triple -o - -O2 | opt - -S -globalopt -o - | FileCheck %s |
|---|---|
| 2 | |
| 3 | struct B; |
| 4 | extern B x; |
| 5 | char y; |
| 6 | typedef __typeof(sizeof(int)) size_t; |
| 7 | struct A { int a; A() { y = ((size_t)this - (size_t)&x) / sizeof(void*); } }; |
| 8 | struct B : virtual A { void* x; }; |
| 9 | B x; |
| 10 | |
| 11 | // CHECK: @y = {{(dso_local )?}}local_unnamed_addr global i8 2 |
| 12 |