Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / clang / test / clang-rename / ComplexFunctionOverride.cpp
blobccf3a20e540024d441d046f73210e7cd4004b8b4
1 struct A {
2 virtual void foo() {} /* Test 1 */ // CHECK: virtual void bar() {}
3 };
5 struct B : A {
6 void foo() override {} /* Test 2 */ // CHECK: void bar() override {}
7 };
9 struct C : B {
10 void foo() override {} /* Test 3 */ // CHECK: void bar() override {}
13 struct D : B {
14 void foo() override {} /* Test 4 */ // CHECK: void bar() override {}
17 struct E : D {
18 void foo() override {} /* Test 5 */ // CHECK: void bar() override {}
21 int main() {
22 A a;
23 a.foo(); // CHECK: a.bar();
24 B b;
25 b.foo(); // CHECK: b.bar();
26 C c;
27 c.foo(); // CHECK: c.bar();
28 D d;
29 d.foo(); // CHECK: d.bar();
30 E e;
31 e.foo(); // CHECK: e.bar();
32 return 0;
35 // Test 1.
36 // RUN: clang-rename -offset=26 -new-name=bar %s -- | sed 's,//.*,,' | FileCheck %s
37 // Test 2.
38 // RUN: clang-rename -offset=109 -new-name=bar %s -- | sed 's,//.*,,' | FileCheck %s
39 // Test 3.
40 // RUN: clang-rename -offset=201 -new-name=bar %s -- | sed 's,//.*,,' | FileCheck %s
41 // Test 4.
42 // RUN: clang-rename -offset=293 -new-name=bar %s -- | sed 's,//.*,,' | FileCheck %s
43 // Test 5.
44 // RUN: clang-rename -offset=385 -new-name=bar %s -- | sed 's,//.*,,' | FileCheck %s
46 // To find offsets after modifying the file, use:
47 // grep -Ubo 'foo.*' <file>