summaryrefslogtreecommitdiff
path: root/clang/test/Index/complete-macro-args.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Index/complete-macro-args.c')
-rw-r--r--clang/test/Index/complete-macro-args.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/clang/test/Index/complete-macro-args.c b/clang/test/Index/complete-macro-args.c
new file mode 100644
index 0000000..ca36af1
--- /dev/null
+++ b/clang/test/Index/complete-macro-args.c
@@ -0,0 +1,22 @@
+struct Point {
+ float x;
+ float y;
+ float z;
+};
+
+#define MACRO2(x) x
+#define MACRO(x) MACRO2(x)
+
+void test(struct Point *p) {
+ p->x;
+ MACRO(p->x);
+}
+
+// RUN: c-index-test -code-completion-at=%s:11:12 %s | FileCheck %s
+// RUN: c-index-test -code-completion-at=%s:12:12 %s | FileCheck %s
+// CHECK: FieldDecl:{ResultType float}{TypedText x} (35)
+// CHECK-NEXT: FieldDecl:{ResultType float}{TypedText y} (35)
+// CHECK-NEXT: FieldDecl:{ResultType float}{TypedText z} (35)
+// CHECK-NEXT: Completion contexts:
+// CHECK-NEXT: Arrow member access
+// CHECK-NEXT: Container Kind: StructDecl