noexcept for <memory>. I've added a few extension noexcept to: allocator_traits<A>::deallocate, allocaate<T>::deallocate, return_temporary_buffer, and default_delete<T>::operator()(T*) const. My rationale was: If a std-dicated noexcept function needs to call another std-defined function, that called function must be noexcept. We're all a little new to noexcept, so things like this are to be expected. Also included fix for broken __is_swappable trait pointed out by Marc Glisse, thanks Marc|. And fixed a test case for is_nothrow_destructible. Destructors are now noexcept by default|
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@132261 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -60,10 +60,10 @@ struct A
|
||||
int main()
|
||||
{
|
||||
test_has_not_nothrow_destructor<void>();
|
||||
test_has_not_nothrow_destructor<A>();
|
||||
test_has_not_nothrow_destructor<Abstract>();
|
||||
test_has_not_nothrow_destructor<NotEmpty>();
|
||||
|
||||
test_is_nothrow_destructible<A>();
|
||||
test_is_nothrow_destructible<int&>();
|
||||
test_is_nothrow_destructible<Union>();
|
||||
test_is_nothrow_destructible<Empty>();
|
||||
|
Reference in New Issue
Block a user