summaryrefslogtreecommitdiff
path: root/clang/test/Index/fix-its.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Index/fix-its.c')
-rw-r--r--clang/test/Index/fix-its.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/clang/test/Index/fix-its.c b/clang/test/Index/fix-its.c
new file mode 100644
index 0000000..d5cb1af
--- /dev/null
+++ b/clang/test/Index/fix-its.c
@@ -0,0 +1,27 @@
+// RUN: c-index-test -test-load-source all -fspell-checking %s 2> %t
+// RUN: FileCheck %s < %t
+struct X {
+ int wibble;
+};
+
+#define MACRO(X) X
+
+void f(struct X *x) {
+ // CHECK: error: no member named 'wobble' in 'struct X'; did you mean 'wibble'?
+ // CHECK: FIX-IT: Replace [13:12 - 13:18] with "wibble"
+ // CHECK: note: 'wibble' declared here
+ MACRO(x->wobble = 17);
+ // CHECK: error: no member named 'wabble' in 'struct X'; did you mean 'wibble'?
+ // CHECK: FIX-IT: Replace [17:6 - 17:12] with "wibble"
+ // CHECK: note: 'wibble' declared here
+ x->wabble = 17;
+}
+
+int printf(const char *restrict, ...);
+
+void f2() {
+ unsigned long index;
+ // CHECK: warning: format specifies type 'int' but the argument has type 'unsigned long'
+ // CHECK: FIX-IT: Replace [26:17 - 26:19] with "%ld"
+ MACRO(printf("%d", index));
+}