[libcxx-commits] [libcxx] [libcxxabi] [libc++] Remove dependence on <ciso646> (PR #73271)

Michael Kenzel via libcxx-commits libcxx-commits at lists.llvm.org
Fri Nov 24 20:02:03 PST 2023


================
@@ -12,15 +12,15 @@
 
 // Attempt to get STL specific macros like _LIBCPP_VERSION using the most
 // minimal header possible. If we're testing libc++, we should use `<__config>`.
-// If <__config> isn't available, fall back to <ciso646>.
+// If <__config> isn't available, fall back to <version>.
 #ifdef __has_include
 # if __has_include("<__config>")
 #   include <__config>
 #   define TEST_IMP_INCLUDED_HEADER
 # endif
 #endif
 #ifndef TEST_IMP_INCLUDED_HEADER
-#include <ciso646>
+#  include <version>
----------------
michael-kenzel wrote:

Speaking of this: Is this whole
```cpp
#ifdef __has_include
# if __has_include("<__config>")
#   include <__config>
#   define TEST_IMP_INCLUDED_HEADER
# endif
#endif
```part at the top actually necessary? Shouldn't that stuff already be pulled in by `<version>` or `<ciso646>`?

If so, all of this could probably just become
```cpp
#if __has_include("<version>")
#  include <version>
#else
#  include <ciso646>
#endif
```
?

https://github.com/llvm/llvm-project/pull/73271


More information about the libcxx-commits mailing list