summaryrefslogtreecommitdiffstats
path: root/clang/test/clang-rename/ClassAsTemplateArgument.cpp
diff options
context:
space:
mode:
authorAlex Lorenz <arphaman@gmail.com>2017-06-30 16:36:09 +0000
committerAlex Lorenz <arphaman@gmail.com>2017-06-30 16:36:09 +0000
commit4abbd92bf4c830549ff5536de9aa821012d76491 (patch)
tree20bac7715081f927841f1c350c176a53d4b5fc1f /clang/test/clang-rename/ClassAsTemplateArgument.cpp
parent069e5cfaf1df6c8c71eb52b6f4d9ed410c459368 (diff)
downloadbcm5719-llvm-4abbd92bf4c830549ff5536de9aa821012d76491.tar.gz
bcm5719-llvm-4abbd92bf4c830549ff5536de9aa821012d76491.zip
[refactor] Move clang-rename into the clang repository
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
Diffstat (limited to 'clang/test/clang-rename/ClassAsTemplateArgument.cpp')
-rw-r--r--clang/test/clang-rename/ClassAsTemplateArgument.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/clang/test/clang-rename/ClassAsTemplateArgument.cpp b/clang/test/clang-rename/ClassAsTemplateArgument.cpp
new file mode 100644
index 00000000000..2e09a5b529e
--- /dev/null
+++ b/clang/test/clang-rename/ClassAsTemplateArgument.cpp
@@ -0,0 +1,21 @@
+class Foo /* Test 1 */ {}; // CHECK: class Bar /* Test 1 */ {};
+
+template <typename T>
+void func() {}
+
+template <typename T>
+class Baz {};
+
+int main() {
+ func<Foo>(); // CHECK: func<Bar>();
+ Baz<Foo> /* Test 2 */ obj; // CHECK: Baz<Bar> /* Test 2 */ obj;
+ return 0;
+}
+
+// Test 1.
+// RUN: clang-rename -offset=7 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s
+// Test 2.
+// RUN: clang-rename -offset=215 -new-name=Bar %s -- | sed 's,//.*,,' | FileCheck %s
+
+// To find offsets after modifying the file, use:
+// grep -Ubo 'Foo.*' <file>
OpenPOWER on IntegriCloud