From bbb901fa67d0cd47565bb9972beb367ae264ec69 Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sat, 6 Jan 2018 21:36:34 +0000 Subject: Vendor import of libc++ release_60 branch r321788: https://llvm.org/svn/llvm-project/libcxx/branches/release_60@321788 --- include/utility | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) (limited to 'include/utility') diff --git a/include/utility b/include/utility index 288c6e823c3b..6fa2e15d1448 100644 --- a/include/utility +++ b/include/utility @@ -99,7 +99,7 @@ void swap(pair& x, pair& y) noexcept(noexcept(x.swap(y))); struct piecewise_construct_t { }; -constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t(); +inline constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t(); template class tuple_size; template class tuple_element; @@ -296,7 +296,7 @@ struct _LIBCPP_TEMPLATE_VIS piecewise_construct_t { }; #if defined(_LIBCPP_CXX03_LANG) || defined(_LIBCPP_BUILDING_UTILITY) extern const piecewise_construct_t piecewise_construct;// = piecewise_construct_t(); #else -constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t(); +/* _LIBCPP_INLINE_VAR */ constexpr piecewise_construct_t piecewise_construct = piecewise_construct_t(); #endif #if defined(_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR) @@ -904,30 +904,21 @@ _T1 exchange(_T1& __obj, _T2 && __new_value) struct _LIBCPP_TYPE_VIS in_place_t { explicit in_place_t() = default; }; -#ifndef _LIBCPP_HAS_NO_INLINE_VARIABLES -inline -#endif -constexpr in_place_t in_place{}; +_LIBCPP_INLINE_VAR constexpr in_place_t in_place{}; template struct _LIBCPP_TEMPLATE_VIS in_place_type_t { explicit in_place_type_t() = default; }; template -#ifndef _LIBCPP_HAS_NO_INLINE_VARIABLES -inline -#endif -constexpr in_place_type_t<_Tp> in_place_type{}; +_LIBCPP_INLINE_VAR constexpr in_place_type_t<_Tp> in_place_type{}; template struct _LIBCPP_TYPE_VIS in_place_index_t { explicit in_place_index_t() = default; }; template -#ifndef _LIBCPP_HAS_NO_INLINE_VARIABLES -inline -#endif -constexpr in_place_index_t<_Idx> in_place_index{}; +_LIBCPP_INLINE_VAR constexpr in_place_index_t<_Idx> in_place_index{}; template struct __is_inplace_type_imp : false_type {}; template struct __is_inplace_type_imp> : true_type {}; -- cgit v1.3