summaryrefslogtreecommitdiff
path: root/test/cfi/bad-split.cpp
blob: 53504bd2710b71960c59c4fb51cff96912fc49a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// GlobalSplit used to lose type metadata for classes with virtual bases but no virtual methods.
// RUN: %clangxx_cfi -o %t1 %s && %t1

// UNSUPPORTED: win32

struct Z {
};

struct ZZ : public virtual Z {
};

struct A : public ZZ {
};

struct B : public A {
};

int main() {
  A* a = new B();
  B *b = (B*)a;
}