summaryrefslogtreecommitdiff
path: root/test/CodeCompletion/end-of-ident-macro.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeCompletion/end-of-ident-macro.cpp')
-rw-r--r--test/CodeCompletion/end-of-ident-macro.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/CodeCompletion/end-of-ident-macro.cpp b/test/CodeCompletion/end-of-ident-macro.cpp
new file mode 100644
index 0000000000000..f288979a2c4d8
--- /dev/null
+++ b/test/CodeCompletion/end-of-ident-macro.cpp
@@ -0,0 +1,16 @@
+#define FUNC(X) X
+#define FUNCTOR
+using FUNCTION = int();
+// We should get all three completions when the cursor is at the beginning,
+// middle, or end.
+FUNC(int) a = 10;
+// ^FUNC(int)
+// RUN: %clang_cc1 -code-completion-at=%s:6:1 -code-completion-macros %s | FileCheck %s
+// FU^NC(int)
+// RUN: %clang_cc1 -code-completion-at=%s:6:3 -code-completion-macros %s | FileCheck %s
+// FUNC^(int)
+// RUN: %clang_cc1 -code-completion-at=%s:6:5 -code-completion-macros %s | FileCheck %s
+
+// CHECK: COMPLETION: FUNC : FUNC(<#X#>)
+// CHECK: COMPLETION: FUNCTION : FUNCTION
+// CHECK: COMPLETION: FUNCTOR : FUNCTOR \ No newline at end of file