[PATCH] D141312: [Support] avoid u8"" literals in tests, their type changes in C++20

Sam McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 9 11:36:22 PST 2023


sammccall created this revision.
sammccall added a reviewer: massberg.
Herald added a project: All.
sammccall requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Just specify the encoded bytes instead, which causes less confusion anyway.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D141312

Files:
  llvm/unittests/Support/JSONTest.cpp


Index: llvm/unittests/Support/JSONTest.cpp
===================================================================
--- llvm/unittests/Support/JSONTest.cpp
+++ llvm/unittests/Support/JSONTest.cpp
@@ -174,12 +174,16 @@
   Compare(R"("\"\\\b\f\n\r\t")", "\"\\\b\f\n\r\t");
   Compare(R"("\u0000")", llvm::StringRef("\0", 1));
   Compare("\"\x7f\"", "\x7f");
-  Compare(R"("\ud801\udc37")", u8"\U00010437"); // UTF16 surrogate pair escape.
-  Compare("\"\xE2\x82\xAC\xF0\x9D\x84\x9E\"", u8"\u20ac\U0001d11e"); // UTF8
+  Compare(R"("\ud801\udc37")", // UTF-16 surrogate pair escape.
+          /*U+10437*/ "\xf0\x90\x90\xb7");
+  Compare("\"\xE2\x82\xAC\xF0\x9D\x84\x9E\"", // UTF-8
+          /*U+20AC U+1D11E*/ "\xe2\x82\xac\xf0\x9d\x84\x9e");
   Compare(
-      R"("LoneLeading=\ud801, LoneTrailing=\udc01, LeadingLeadingTrailing=\ud801\ud801\udc37")",
-      u8"LoneLeading=\ufffd, LoneTrailing=\ufffd, "
-      u8"LeadingLeadingTrailing=\ufffd\U00010437"); // Invalid unicode.
+      // Invalid unicode.
+      R"("LoneLeading=\ud801, LoneTrailing=\udc01, LeadLeadTrail=\ud801\ud801\udc37")",
+      "LoneLeading=" /*U+FFFD*/ "\xef\xbf\xbd, "
+      "LoneTrailing=" /*U+FFFD*/ "\xef\xbf\xbd, "
+      "LeadLeadTrail=" /*U+FFFD U+10437*/ "\xef\xbf\xbd\xf0\x90\x90\xb7");
 
   Compare(R"({"":0,"":0})", Object{{"", 0}});
   Compare(R"({"obj":{},"arr":[]})", Object{{"obj", Object{}}, {"arr", {}}});


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D141312.487514.patch
Type: text/x-patch
Size: 1394 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230109/be4ce549/attachment.bin>


More information about the llvm-commits mailing list