visibility-decoration.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@114486 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/exception b/include/exception
index 69b76cc..a69f30b 100644
--- a/include/exception
+++ b/include/exception
@@ -115,22 +115,25 @@
exception_ptr current_exception();
void rethrow_exception(exception_ptr); // noreturn
-class exception_ptr
+class _LIBCPP_VISIBLE exception_ptr
{
void* __ptr_;
public:
- exception_ptr() : __ptr_() {}
- exception_ptr(nullptr_t) : __ptr_() {}
+ _LIBCPP_INLINE_VISIBILITY exception_ptr() : __ptr_() {}
+ _LIBCPP_INLINE_VISIBILITY exception_ptr(nullptr_t) : __ptr_() {}
exception_ptr(const exception_ptr&);
exception_ptr& operator=(const exception_ptr&);
~exception_ptr();
+ _LIBCPP_INLINE_VISIBILITY
// explicit
operator bool() const {return __ptr_ != nullptr;}
- friend bool operator==(const exception_ptr& __x, const exception_ptr& __y)
+ friend _LIBCPP_INLINE_VISIBILITY
+ bool operator==(const exception_ptr& __x, const exception_ptr& __y)
{return __x.__ptr_ == __y.__ptr_;}
- friend bool operator!=(const exception_ptr& __x, const exception_ptr& __y)
+ friend _LIBCPP_INLINE_VISIBILITY
+ bool operator!=(const exception_ptr& __x, const exception_ptr& __y)
{return !(__x == __y);}
friend exception_ptr current_exception();
@@ -166,7 +169,7 @@
// access functions
void rethrow_nested /*[[noreturn]]*/ () const;
- exception_ptr nested_ptr() const {return __ptr_;}
+ _LIBCPP_INLINE_VISIBILITY exception_ptr nested_ptr() const {return __ptr_;}
};
template <class _Tp>
@@ -174,7 +177,7 @@
: public _Tp,
public nested_exception
{
- explicit __nested(const _Tp& __t) : _Tp(__t) {}
+ _LIBCPP_INLINE_VISIBILITY explicit __nested(const _Tp& __t) : _Tp(__t) {}
};
template <class _Tp>
@@ -214,7 +217,7 @@
}
template <class _E>
-inline
+inline _LIBCPP_INLINE_VISIBILITY
void
rethrow_if_nested(const _E& __e, typename enable_if<
is_polymorphic<_E>::value
@@ -226,7 +229,7 @@
}
template <class _E>
-inline
+inline _LIBCPP_INLINE_VISIBILITY
void
rethrow_if_nested(const _E& __e, typename enable_if<
!is_polymorphic<_E>::value