* include/std/system_error (error_category::error_category()): LWG
2145: Declare public and constexpr.
* src/c++11/system_error.cc (error_category::error_category()): Move
definition to ...
* src/c++11/compatibility-c++0x.cc: Here.
From-SVN: r199071
+2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
+
+ * include/std/system_error (error_category::error_category()): LWG
+ 2145: Declare public and constexpr.
+ * src/c++11/system_error.cc (error_category::error_category()): Move
+ definition to ...
+ * src/c++11/compatibility-c++0x.cc: Here.
+
2013-05-18 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/std/typeindex (type_index::name()): LWG 2144: Add noexcept.
/// error_category
class error_category
{
- protected:
+ public:
+#ifdef _GLIBCXX_COMPATIBILITY_CXX0X
error_category() noexcept;
+#else
+ constexpr error_category() noexcept = default;
+#endif
- public:
- virtual ~error_category() noexcept;
+ virtual ~error_category();
error_category(const error_category&) = delete;
error_category& operator=(const error_category&) = delete;
};
constexpr bool system_clock::is_monotonic;
} // namespace chrono
+
+ // gcc-4.9.0
+ // LWG 2145 changes this constructor to constexpr i.e. inline
+ error_category::error_category() noexcept = default;
}
#endif
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
- error_category::error_category() noexcept = default;
-
error_category::~error_category() noexcept = default;
const error_category&