[libcxx-commits] [libcxxabi] r364677 - [demangle] Support for C++2a char8_t

Erik Pilkington via libcxx-commits libcxx-commits at lists.llvm.org
Fri Jun 28 12:54:19 PDT 2019


Author: epilk
Date: Fri Jun 28 12:54:19 2019
New Revision: 364677

URL: http://llvm.org/viewvc/llvm-project?rev=364677&view=rev
Log:
[demangle] Support for C++2a char8_t

Modified:
    libcxxabi/trunk/src/demangle/ItaniumDemangle.h
    libcxxabi/trunk/test/test_demangle.pass.cpp

Modified: libcxxabi/trunk/src/demangle/ItaniumDemangle.h
URL: http://llvm.org/viewvc/llvm-project/libcxxabi/trunk/src/demangle/ItaniumDemangle.h?rev=364677&r1=364676&r2=364677&view=diff
==============================================================================
--- libcxxabi/trunk/src/demangle/ItaniumDemangle.h (original)
+++ libcxxabi/trunk/src/demangle/ItaniumDemangle.h Fri Jun 28 12:54:19 2019
@@ -3624,6 +3624,10 @@ Node *AbstractManglingParser<Derived, Al
     case 's':
       First += 2;
       return make<NameType>("char16_t");
+    //                ::= Du   # char8_t (C++2a, not yet in the Itanium spec)
+    case 'u':
+      First += 2;
+      return make<NameType>("char8_t");
     //                ::= Da   # auto (in dependent new-expressions)
     case 'a':
       First += 2;

Modified: libcxxabi/trunk/test/test_demangle.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxxabi/trunk/test/test_demangle.pass.cpp?rev=364677&r1=364676&r2=364677&view=diff
==============================================================================
--- libcxxabi/trunk/test/test_demangle.pass.cpp (original)
+++ libcxxabi/trunk/test/test_demangle.pass.cpp Fri Jun 28 12:54:19 2019
@@ -29772,6 +29772,9 @@ const char* cases[][2] =
 
     {"_ZN3FooIXu8__uuidofzdeL_Z3sucEEEC1Ev", "Foo<__uuidof(*(suc))>::Foo()"},
     {"_ZN3FooIXu8__uuidoft13SomeUUIDClassEEC1Ev", "Foo<__uuidof(SomeUUIDClass)>::Foo()"},
+
+    // C++2a char8_t:
+    {"_ZTSPDu", "typeinfo name for char8_t*"},
 };
 
 const unsigned N = sizeof(cases) / sizeof(cases[0]);




More information about the libcxx-commits mailing list