@@ -39,6 +39,8 @@ _LIBCPP_PUSH_MACROS
3939// the user.
4040//
4141
42+ #if _LIBCPP_STD_VER >= 17
43+
4244_LIBCPP_BEGIN_NAMESPACE_STD
4345namespace __pstl {
4446
@@ -50,18 +52,18 @@ struct __libdispatch_backend_tag;
5052struct __serial_backend_tag ;
5153struct __std_thread_backend_tag ;
5254
53- #if defined(_LIBCPP_PSTL_BACKEND_SERIAL)
55+ # if defined(_LIBCPP_PSTL_BACKEND_SERIAL)
5456using __current_configuration = __backend_configuration<__serial_backend_tag, __default_backend_tag>;
55- #elif defined(_LIBCPP_PSTL_BACKEND_STD_THREAD)
57+ # elif defined(_LIBCPP_PSTL_BACKEND_STD_THREAD)
5658using __current_configuration = __backend_configuration<__std_thread_backend_tag, __default_backend_tag>;
57- #elif defined(_LIBCPP_PSTL_BACKEND_LIBDISPATCH)
59+ # elif defined(_LIBCPP_PSTL_BACKEND_LIBDISPATCH)
5860using __current_configuration = __backend_configuration<__libdispatch_backend_tag, __default_backend_tag>;
59- #else
61+ # else
6062
6163// ...New vendors can add parallel backends here...
6264
63- # error "Invalid PSTL backend configuration"
64- #endif
65+ # error "Invalid PSTL backend configuration"
66+ # endif
6567
6668template <class _Backend , class _ExecutionPolicy >
6769struct __find_if ;
@@ -296,6 +298,8 @@ struct __reduce;
296298} // namespace __pstl
297299_LIBCPP_END_NAMESPACE_STD
298300
301+ #endif // _LIBCPP_STD_VER >= 17
302+
299303_LIBCPP_POP_MACROS
300304
301305#endif // _LIBCPP___PSTL_BACKEND_FWD_H
0 commit comments