From 75689c1018ffcacb3d4771297f439822882313c6 Mon Sep 17 00:00:00 2001 From: Howard Hinnant Date: Fri, 2 Dec 2011 19:36:40 +0000 Subject: Fix http://llvm.org/bugs/show_bug.cgi?id=11428. Fix provided by Alberto Ganesh Barbati llvm-svn: 145698 --- libcxx/include/ios | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'libcxx/include/ios') diff --git a/libcxx/include/ios b/libcxx/include/ios index 7ea63a31ca7..3aa066bfe63 100644 --- a/libcxx/include/ios +++ b/libcxx/include/ios @@ -373,21 +373,19 @@ private: }; //enum class io_errc -struct _LIBCPP_VISIBLE io_errc +_LIBCPP_DECLARE_STRONG_ENUM(io_errc) { -enum _ { stream = 1 }; - _ __v_; - - _LIBCPP_ALWAYS_INLINE io_errc(_ __v) : __v_(__v) {} - _LIBCPP_ALWAYS_INLINE operator int() const {return __v_;} -}; +_LIBCPP_DECLARE_STRONG_ENUM_EPILOG(io_errc) template <> struct _LIBCPP_VISIBLE is_error_code_enum : public true_type { }; + +#ifdef _LIBCPP_HAS_NO_STRONG_ENUMS template <> struct _LIBCPP_VISIBLE is_error_code_enum : public true_type { }; +#endif _LIBCPP_VISIBLE const error_category& iostream_category(); -- cgit v1.2.3