summaryrefslogtreecommitdiff
path: root/libcxx/include/execution
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/include/execution')
-rw-r--r--libcxx/include/execution40
1 files changed, 22 insertions, 18 deletions
diff --git a/libcxx/include/execution b/libcxx/include/execution
index 94d434b2e460..7c695997cd04 100644
--- a/libcxx/include/execution
+++ b/libcxx/include/execution
@@ -32,17 +32,20 @@ namespace std {
}
*/
-#include <__config>
-#include <__type_traits/is_execution_policy.h>
-#include <__type_traits/is_same.h>
-#include <__type_traits/remove_cvref.h>
-#include <version>
-
-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
-# pragma GCC system_header
-#endif
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+# include <__cxx03/execution>
+#else
+# include <__config>
+# include <__type_traits/is_execution_policy.h>
+# include <__type_traits/is_same.h>
+# include <__type_traits/remove_cvref.h>
+# include <version>
+
+# if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+# pragma GCC system_header
+# endif
-#if !defined(_LIBCPP_HAS_NO_INCOMPLETE_PSTL) && _LIBCPP_STD_VER >= 17
+# if !defined(_LIBCPP_HAS_NO_INCOMPLETE_PSTL) && _LIBCPP_STD_VER >= 17
_LIBCPP_BEGIN_NAMESPACE_STD
@@ -79,7 +82,7 @@ struct __unsequenced_policy {
constexpr __unsequenced_policy __unseq{__disable_user_instantiations_tag{}};
-# if _LIBCPP_STD_VER >= 20
+# if _LIBCPP_STD_VER >= 20
struct unsequenced_policy {
_LIBCPP_HIDE_FROM_ABI constexpr explicit unsequenced_policy(__disable_user_instantiations_tag) {}
@@ -89,7 +92,7 @@ struct unsequenced_policy {
inline constexpr unsequenced_policy unseq{__disable_user_instantiations_tag{}};
-# endif // _LIBCPP_STD_VER >= 20
+# endif // _LIBCPP_STD_VER >= 20
} // namespace execution
@@ -117,14 +120,14 @@ inline constexpr bool __is_unsequenced_execution_policy_impl<execution::__unsequ
template <>
inline constexpr bool __is_unsequenced_execution_policy_impl<execution::parallel_unsequenced_policy> = true;
-# if _LIBCPP_STD_VER >= 20
+# if _LIBCPP_STD_VER >= 20
template <>
inline constexpr bool is_execution_policy_v<execution::unsequenced_policy> = true;
template <>
inline constexpr bool __is_unsequenced_execution_policy_impl<execution::unsequenced_policy> = true;
-# endif
+# endif
template <class _Tp>
struct is_execution_policy : bool_constant<is_execution_policy_v<_Tp>> {};
@@ -140,10 +143,11 @@ _LIBCPP_HIDE_FROM_ABI auto __remove_parallel_policy(const _ExecutionPolicy&) {
_LIBCPP_END_NAMESPACE_STD
-#endif // !defined(_LIBCPP_HAS_NO_INCOMPLETE_PSTL) && _LIBCPP_STD_VER >= 17
+# endif // !defined(_LIBCPP_HAS_NO_INCOMPLETE_PSTL) && _LIBCPP_STD_VER >= 17
-#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
-# include <cstddef>
-#endif
+# if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstddef>
+# endif
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
#endif // _LIBCPP_EXECUTION