File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change 111111
112112_LIBCPP_BEGIN_NAMESPACE_STD
113113
114- template <typename _Tp, typename _Base = __cxx_atomic_base_impl<_Tp> >
115- struct __cxx_atomic_impl : public _Base {
114+ template <typename _Tp>
115+ struct __check_atomic_mandates {
116+ using type = _Tp;
116117 static_assert (is_trivially_copyable<_Tp>::value, " std::atomic<T> requires that 'T' be a trivially copyable type" );
118+ };
117119
120+ template <typename _Tp, typename _Base = __cxx_atomic_base_impl<typename __check_atomic_mandates<_Tp>::type> >
121+ struct __cxx_atomic_impl : public _Base {
118122 _LIBCPP_HIDE_FROM_ABI __cxx_atomic_impl () _NOEXCEPT = default;
119123 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR explicit __cxx_atomic_impl (_Tp __value) _NOEXCEPT : _Base(__value) {}
120124};
You can’t perform that action at this time.
0 commit comments