summaryrefslogtreecommitdiff
path: root/test/cfi/bad-split.cpp
blob: 37e635aef55b88651dd20f0cbeb402273f28925a (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 && %run %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;
}