summaryrefslogtreecommitdiffstats
path: root/clang/test/Misc/wrong-encoding.c
diff options
context:
space:
mode:
authorSeth Cantrell <seth.cantrell@gmail.com>2012-04-18 02:44:46 +0000
committerSeth Cantrell <seth.cantrell@gmail.com>2012-04-18 02:44:46 +0000
commit99e2fa87f8c0bc46d1f739d2d378bc3ea6007c60 (patch)
tree5ed6ea6d376688ba9e060f0951acc87b0c72d7b9 /clang/test/Misc/wrong-encoding.c
parentbade1fb874f0020e132fea34426973ba55aba13b (diff)
downloadbcm5719-llvm-99e2fa87f8c0bc46d1f739d2d378bc3ea6007c60.tar.gz
bcm5719-llvm-99e2fa87f8c0bc46d1f739d2d378bc3ea6007c60.zip
Nicer display of unprintable source, and fix caret display for non-ascii text
Unprintable source in diagnostics is transformed to a printable form and then displayed with reversed colors if possible. Unprintable characters are displayed as <U+NNNN> while bytes that do not represent valid characters are shown as <XX>. Column adjustments to diagnostic carets, highlighted ranges, and fixups are made both for characters escaped as above and for characters which are printable but take up more than a single column. llvm-svn: 154980
Diffstat (limited to 'clang/test/Misc/wrong-encoding.c')
-rw-r--r--clang/test/Misc/wrong-encoding.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/Misc/wrong-encoding.c b/clang/test/Misc/wrong-encoding.c
new file mode 100644
index 00000000000..bd1cf3dc02a
--- /dev/null
+++ b/clang/test/Misc/wrong-encoding.c
@@ -0,0 +1,16 @@
+// RUN: %clang_cc1 -fsyntax-only %s 2>&1 | FileCheck -strict-whitespace %s
+
+void foo() {
+
+ "§Ã"; // ø
+// CHECK: {{^ "<A7><C3>"; // <F8>}}
+// CHECK: {{^ \^}}
+
+ /* þ« */ const char *d = "¥";
+
+// CHECK: {{^ /\* <FE><AB> \*/ const char \*d = "<A5>";}}
+// CHECK: {{^ \^}}
+
+// CHECK: {{^ "<A7><C3>"; // <F8>}}
+// CHECK: {{^ \^~~~~~~~~~}}
+}
OpenPOWER on IntegriCloud