[libcxx-commits] [PATCH] D92212: Make libcxx work as expected with -fchar8_t

Yuriy Chernyshov via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Nov 27 00:40:01 PST 2020


georgthegreat created this revision.
georgthegreat added reviewers: mclow.lists, EricWF.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.
georgthegreat requested review of this revision.

At the time libcxx does not work as expected with -std=c++17 -fchar8_t.

In my POV, this option was indended to enable the entire P0482 <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0482r6.html>, as it has landed into the standard.

At least clang user manual <https://clang.llvm.org/cxx_status.html> says so:

//Prior to Clang 8, this feature is not enabled by -std=c++20, but can be enabled with -fchar8_t. //

This PR makes libcxx to define u8string / u8string_view regarding the standard feature flag, disregarding wrether the standard has be switched to C++20.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D92212

Files:
  libcxx/include/__config


Index: libcxx/include/__config
===================================================================
--- libcxx/include/__config
+++ libcxx/include/__config
@@ -953,9 +953,9 @@
 #define _LIBCPP_WCTYPE_IS_MASK
 #endif

-#if _LIBCPP_STD_VER <= 17 || !defined(__cpp_char8_t)
+#if !defined(__cpp_char8_t)
 #define _LIBCPP_NO_HAS_CHAR8_T
 #endif

 // Deprecation macros.
 //


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D92212.307974.patch
Type: text/x-patch
Size: 368 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20201127/9b92aeb7/attachment.bin>


More information about the libcxx-commits mailing list