2012-10-29 02:24:46 +08:00
|
|
|
|
// RUN: %clang_cc1 -fsyntax-only -Wno-unused-value %s 2>&1 | FileCheck -strict-whitespace %s
|
2012-10-31 07:22:22 +08:00
|
|
|
|
// REQUIRES: asserts
|
2012-04-18 10:44:46 +08:00
|
|
|
|
|
|
|
|
|
void foo() {
|
|
|
|
|
|
|
|
|
|
"<EFBFBD><EFBFBD>"; // <20>
|
|
|
|
|
// CHECK: {{^ "<A7><C3>"; // <F8>}}
|
2012-10-29 02:24:46 +08:00
|
|
|
|
// CHECK: {{^ \^~~~~~~}}
|
2012-04-18 10:44:46 +08:00
|
|
|
|
|
|
|
|
|
/* <20><> */ const char *d = "<EFBFBD>";
|
|
|
|
|
|
|
|
|
|
// CHECK: {{^ /\* <FE><AB> \*/ const char \*d = "<A5>";}}
|
2012-09-08 15:16:20 +08:00
|
|
|
|
// CHECK: {{^ \^~~~}}
|
2012-04-18 10:44:46 +08:00
|
|
|
|
|
2012-10-29 02:24:46 +08:00
|
|
|
|
"xx鿿<EFBFBD>d";
|
|
|
|
|
// CHECK: {{^ "xx<U\+9FFF><BF>d";}}
|
|
|
|
|
// CHECK: {{^ \^~~~}}
|
|
|
|
|
|
|
|
|
|
"xx<EFBFBD><EFBFBD>bcd";
|
|
|
|
|
// CHECK: {{^ "xx<E9><BF>bcd";}}
|
|
|
|
|
// CHECK: {{^ \^~~~~~~~}}
|
|
|
|
|
|
|
|
|
|
"xx<EFBFBD>abcd";
|
|
|
|
|
// CHECK: {{^ "xx<E9>abcd";}}
|
|
|
|
|
// CHECK: {{^ \^~~~}}
|
|
|
|
|
|
|
|
|
|
"xx<EFBFBD><EFBFBD><EFBFBD><EFBFBD>d";
|
|
|
|
|
// CHECK: {{^ "xx<E9><BF><E9><BF>d";}}
|
|
|
|
|
// CHECK: {{^ \^~~~~~~~~~~~~~~}}
|
|
|
|
|
|
|
|
|
|
"xx<EFBFBD><EFBFBD>xxxxxxxxxxxxxxxxxxxxx<EFBFBD><EFBFBD>xx";
|
|
|
|
|
// CHECK: {{^ "xx<E9><BF>xxxxxxxxxxxxxxxxxxxxx<E9><BF>xx";}}
|
|
|
|
|
// CHECK: {{^ \^~~~~~~~ ~~~~~~~~}}
|
2012-10-31 07:22:22 +08:00
|
|
|
|
|
|
|
|
|
"x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x<EFBFBD><EFBFBD>x";
|
2012-04-18 10:44:46 +08:00
|
|
|
|
}
|
2012-10-31 07:22:22 +08:00
|
|
|
|
// CHECK-NOT:Assertion
|