1 // -*- C++ -*- 2 //===-------------------------- system_error ------------------------------===// 3 // 4 // The LLVM Compiler Infrastructure 5 // 6 // This file is dual licensed under the MIT and the University of Illinois Open 7 // Source Licenses. See LICENSE.TXT for details. 8 // 9 //===----------------------------------------------------------------------===// 10 11 #ifndef _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR 12 #define _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR 13 14 /** 15 experimental/system_error synopsis 16 17 // C++1y 18 19 #include <system_error> 20 21 namespace std { 22 namespace experimental { 23 inline namespace fundamentals_v1 { 24 25 // See C++14 19.5, System error support 26 template <class T> constexpr bool is_error_code_enum_v 27 = is_error_code_enum<T>::value; 28 template <class T> constexpr bool is_error_condition_enum_v 29 = is_error_condition_enum<T>::value; 30 31 } // namespace fundamentals_v1 32 } // namespace experimental 33 } // namespace std 34 35 */ 36 37 #include <experimental/__config> 38 39 #if _LIBCPP_STD_VER > 11 40 41 #include <system_error> 42 43 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 44 #pragma GCC system_header 45 #endif 46 47 _LIBCPP_BEGIN_NAMESPACE_LFTS 48 49 #ifndef _LIBCPP_HAS_NO_VARIABLE_TEMPLATES 50 51 template <class _Tp> _LIBCPP_CONSTEXPR bool is_error_code_enum_v 52 = is_error_code_enum<_Tp>::value; 53 54 template <class _Tp> _LIBCPP_CONSTEXPR bool is_error_condition_enum_v 55 = is_error_condition_enum<_Tp>::value; 56 57 #endif /* _LIBCPP_HAS_NO_VARIABLE_TEMPLATES */ 58 59 _LIBCPP_END_NAMESPACE_LFTS 60 61 #endif /* _LIBCPP_STD_VER > 11 */ 62 63 #endif /* _LIBCPP_EXPERIMENTAL_SYSTEM_ERROR */ 64