visibility-decoration sweep completed.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@114685 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Howard Hinnant
2010-09-23 18:58:28 +00:00
parent 8d7a9557b7
commit ee6ccd0e32
9 changed files with 867 additions and 520 deletions

View File

@@ -186,7 +186,7 @@ move_if_noexcept(_Tp& __x)
return _STD::move(__x);
}
struct piecewise_construct_t { };
struct _LIBCPP_VISIBLE piecewise_construct_t { };
//constexpr
extern const piecewise_construct_t piecewise_construct;// = piecewise_construct_t();
@@ -194,7 +194,7 @@ template <class _T1, class _T2> struct pair;
template <class _T1, class _T2> void swap(pair<_T1, _T2>&, pair<_T1, _T2>&);
template <class _T1, class _T2>
struct pair
struct _LIBCPP_VISIBLE pair
{
typedef _T1 first_type;
typedef _T2 second_type;
@@ -231,6 +231,7 @@ struct pair
{}
template <class... _Args1, class... _Args2, size_t... _I1, size_t... _I2>
_LIBCPP_INLINE_VISIBILITY
pair(piecewise_construct_t __pc, tuple<_Args1...> __first_args,
tuple<_Args2...> __second_args)
: pair(__pc, __first_args, __second_args,
@@ -240,6 +241,7 @@ struct pair
template <class _Tuple,
class = typename enable_if<__tuple_assignable<_Tuple, pair>::value>::type>
_LIBCPP_INLINE_VISIBILITY
pair&
operator=(_Tuple&& __p)
{
@@ -349,7 +351,7 @@ struct __make_pair_return
};
template <class _T1, class _T2>
inline
inline _LIBCPP_INLINE_VISIBILITY
pair<typename __make_pair_return<_T1>::type, typename __make_pair_return<_T2>::type>
make_pair(_T1&& __t1, _T2&& __t2)
{
@@ -372,34 +374,36 @@ make_pair(_T1 __x, _T2 __y)
#ifndef _LIBCPP_HAS_NO_VARIADICS
template <class _T1, class _T2>
class tuple_size<pair<_T1, _T2> > : public integral_constant<size_t, 2> {};
class _LIBCPP_VISIBLE tuple_size<pair<_T1, _T2> >
: public integral_constant<size_t, 2> {};
template <class _T1, class _T2>
class tuple_size<const pair<_T1, _T2> > : public integral_constant<size_t, 2> {};
class _LIBCPP_VISIBLE tuple_size<const pair<_T1, _T2> >
: public integral_constant<size_t, 2> {};
template <class _T1, class _T2>
class tuple_element<0, pair<_T1, _T2> >
class _LIBCPP_VISIBLE tuple_element<0, pair<_T1, _T2> >
{
public:
typedef _T1 type;
};
template <class _T1, class _T2>
class tuple_element<1, pair<_T1, _T2> >
class _LIBCPP_VISIBLE tuple_element<1, pair<_T1, _T2> >
{
public:
typedef _T2 type;
};
template <class _T1, class _T2>
class tuple_element<0, const pair<_T1, _T2> >
class _LIBCPP_VISIBLE tuple_element<0, const pair<_T1, _T2> >
{
public:
typedef const _T1 type;
};
template <class _T1, class _T2>
class tuple_element<1, const pair<_T1, _T2> >
class _LIBCPP_VISIBLE tuple_element<1, const pair<_T1, _T2> >
{
public:
typedef const _T2 type;