mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-30 09:06:06 +00:00

The core engine of clang-rename will be used for local and global renames in the new refactoring engine, as mentioned in http://lists.llvm.org/pipermail/cfe-dev/2017-June/054286.html. The clang-rename tool is still supported but might get deprecated in the future. Differential Revision: https://reviews.llvm.org/D34696 llvm-svn: 306840
27 lines
716 B
C++
27 lines
716 B
C++
class Foo { /* Test 1 */ // CHECK: class Bar {
|
|
public:
|
|
Foo() {} // CHECK: Bar() {}
|
|
};
|
|
|
|
class Baz {
|
|
public:
|
|
operator Foo() /* Test 2 */ const { // CHECK: operator Bar() /* Test 2 */ const {
|
|
Foo foo; // CHECK: Bar foo;
|
|
return foo;
|
|
}
|
|
};
|
|
|
|
int main() {
|
|
Baz boo;
|
|
Foo foo = static_cast<Foo>(boo); // CHECK: Bar foo = static_cast<Bar>(boo);
|
|
return 0;
|
|
}
|
|
|
|
// Test 1.
|
|
// RUN: clang-rename -offset=7 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s
|
|
// Test 2.
|
|
// RUN: clang-rename -offset=164 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s
|
|
|
|
// To find offsets after modifying the file, use:
|
|
// grep -Ubo 'Foo.*' <file>
|