summaryrefslogtreecommitdiffstats
path: root/clang/test/Misc
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2012-11-30 06:19:40 +0000
committerEli Friedman <eli.friedman@gmail.com>2012-11-30 06:19:40 +0000
commitdea98de3fb4bea09b3ed3a68d90a03e21546b5b0 (patch)
tree6aa4f3038cdc769379bc4e66df70c55b07041c55 /clang/test/Misc
parentb950ea61fcff7f5b28c5c1aeb892818e92f82f42 (diff)
downloadbcm5719-llvm-dea98de3fb4bea09b3ed3a68d90a03e21546b5b0.tar.gz
bcm5719-llvm-dea98de3fb4bea09b3ed3a68d90a03e21546b5b0.zip
Fix the computation of highlight ranges so we produce something sane when
the beginning and end of the range are in different macro arguments. PR14399. llvm-svn: 168984
Diffstat (limited to 'clang/test/Misc')
-rw-r--r--clang/test/Misc/caret-diags-macros.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/clang/test/Misc/caret-diags-macros.c b/clang/test/Misc/caret-diags-macros.c
index 5faddb65f6e..a41816f0eed 100644
--- a/clang/test/Misc/caret-diags-macros.c
+++ b/clang/test/Misc/caret-diags-macros.c
@@ -163,3 +163,17 @@ int y = Y;
// CHECK-NEXT: {{.*}}:134:15: note: expanded from macro 'QMARK'
// CHECK-NEXT: #define QMARK ?
// CHECK-NEXT: {{^ \^}}
+
+// PR14399
+void iequals(int,int,int);
+void foo_aa()
+{
+#define /* */ BARC(c, /* */b, a, ...) (a+b+/* */c + __VA_ARGS__ +0)
+ iequals(__LINE__, BARC(4,3,2,6,8), 8);
+}
+// CHECK: {{.*}}:172:21: warning: expression result unused
+// CHECK-NEXT: iequals(__LINE__, BARC(4,3,2,6,8), 8);
+// CHECK-NEXT: {{^ \^~~~~~~~~~~~~~~}}
+// CHECK-NEXT: {{.*}}:171:51: note: expanded from macro 'BARC'
+// CHECK-NEXT: #define /* */ BARC(c, /* */b, a, ...) (a+b+/* */c + __VA_ARGS__ +0)
+// CHECK-NEXT: {{^ ~~~~~~~~~~ \^}}
OpenPOWER on IntegriCloud