mirror of git://gcc.gnu.org/git/gcc.git
Fix typos in experimental::shared_ptr
* include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)): Remove const from parameter. (operator<(const shared_ptr<T>&, nullptr_t)): Use correct specialization of std::less. * testsuite/experimental/memory/shared_ptr/comparison/comparison.cc: Test comparison with nullptr and actually call test functions. From-SVN: r241310
This commit is contained in:
parent
e25a366f6f
commit
8a9ff71f5b
|
|
@ -1,5 +1,12 @@
|
||||||
2016-10-18 Jonathan Wakely <jwakely@redhat.com>
|
2016-10-18 Jonathan Wakely <jwakely@redhat.com>
|
||||||
|
|
||||||
|
* include/experimental/bits/shared_ptr.h (shared_ptr(shared_ptr&&)):
|
||||||
|
Remove const from parameter.
|
||||||
|
(operator<(const shared_ptr<T>&, nullptr_t)): Use correct
|
||||||
|
specialization of std::less.
|
||||||
|
* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
|
||||||
|
Test comparison with nullptr and actually call test functions.
|
||||||
|
|
||||||
* include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
|
* include/bits/uses_allocator.h (__is_uses_allocator_constructible_v)
|
||||||
(__is_nothrow_uses_allocator_constructible_v): Only define for C++14
|
(__is_nothrow_uses_allocator_constructible_v): Only define for C++14
|
||||||
and later.
|
and later.
|
||||||
|
|
|
||||||
|
|
@ -672,7 +672,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||||
shared_ptr(const shared_ptr<_Tp1>& __r) noexcept
|
shared_ptr(const shared_ptr<_Tp1>& __r) noexcept
|
||||||
: _Base_type(__r) { }
|
: _Base_type(__r) { }
|
||||||
|
|
||||||
shared_ptr(const shared_ptr<_Tp>&& __r) noexcept
|
shared_ptr(shared_ptr&& __r) noexcept
|
||||||
: _Base_type(std::move(__r)) { }
|
: _Base_type(std::move(__r)) { }
|
||||||
|
|
||||||
template<typename _Tp1, typename = _Compatible<_Tp1>>
|
template<typename _Tp1, typename = _Compatible<_Tp1>>
|
||||||
|
|
@ -815,7 +815,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
|
||||||
operator<(const shared_ptr<_Tp>& __a, nullptr_t) noexcept
|
operator<(const shared_ptr<_Tp>& __a, nullptr_t) noexcept
|
||||||
{
|
{
|
||||||
using __elem_t = typename shared_ptr<_Tp>::element_type;
|
using __elem_t = typename shared_ptr<_Tp>::element_type;
|
||||||
return std::less<__elem_t>()(__a.get(), nullptr);
|
return std::less<__elem_t*>()(__a.get(), nullptr);
|
||||||
}
|
}
|
||||||
|
|
||||||
template<typename _Tp>
|
template<typename _Tp>
|
||||||
|
|
|
||||||
|
|
@ -73,8 +73,18 @@ test02()
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
test03()
|
||||||
|
{
|
||||||
|
std::experimental::shared_ptr<A[5]> a(new A[5]);
|
||||||
|
VERIFY( nullptr < a );
|
||||||
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
main()
|
main()
|
||||||
{
|
{
|
||||||
|
test01();
|
||||||
|
test02();
|
||||||
|
test03();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue