diff --git a/include/system_error b/include/system_error index ac3fb4474..df668cc64 100644 --- a/include/system_error +++ b/include/system_error @@ -22,6 +22,7 @@ class error_category public: virtual ~error_category() noexcept; + constexpr error_category(); error_category(const error_category&) = delete; error_category& operator=(const error_category&) = delete; @@ -366,7 +367,11 @@ class _LIBCPP_TYPE_VIS error_category public: virtual ~error_category() _NOEXCEPT; +#ifdef _LIBCPP_BUILDING_SYSTEM_ERROR error_category() _NOEXCEPT; +#else + _LIBCPP_ALWAYS_INLINE _LIBCPP_CONSTEXPR_AFTER_CXX11 error_category() _NOEXCEPT {} +#endif private: error_category(const error_category&);// = delete; error_category& operator=(const error_category&);// = delete; diff --git a/src/system_error.cpp b/src/system_error.cpp index 7376b770e..b40409f85 100644 --- a/src/system_error.cpp +++ b/src/system_error.cpp @@ -7,6 +7,7 @@ // //===----------------------------------------------------------------------===// +#define _LIBCPP_BUILDING_SYSTEM_ERROR #include "system_error" #include "string" #include "cstring" diff --git a/www/cxx1y_status.html b/www/cxx1y_status.html index 89f0efe28..99c803572 100644 --- a/www/cxx1y_status.html +++ b/www/cxx1y_status.html @@ -143,7 +143,7 @@