diff options
Diffstat (limited to 'libcxx/test/strings/basic.string/string.nonmembers/string.special/swap_noexcept.pass.cpp')
| -rw-r--r-- | libcxx/test/strings/basic.string/string.nonmembers/string.special/swap_noexcept.pass.cpp | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/libcxx/test/strings/basic.string/string.nonmembers/string.special/swap_noexcept.pass.cpp b/libcxx/test/strings/basic.string/string.nonmembers/string.special/swap_noexcept.pass.cpp deleted file mode 100644 index 4d5d79693d0..00000000000 --- a/libcxx/test/strings/basic.string/string.nonmembers/string.special/swap_noexcept.pass.cpp +++ /dev/null @@ -1,54 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// The LLVM Compiler Infrastructure -// -// This file is dual licensed under the MIT and the University of Illinois Open -// Source Licenses. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -// <string> - -// void swap(basic_string& c) -// noexcept(!allocator_type::propagate_on_container_swap::value || -// __is_nothrow_swappable<allocator_type>::value); - -// This tests a conforming extension - -#include <string> -#include <cassert> - -#include "test_allocator.h" - -template <class T> -struct some_alloc -{ - typedef T value_type; - - some_alloc() {} - some_alloc(const some_alloc&); - void deallocate(void*, unsigned) {} - - typedef std::true_type propagate_on_container_swap; -}; - -int main() -{ -#if __has_feature(cxx_noexcept) - { - typedef std::string C; - C c1, c2; - static_assert(noexcept(swap(c1, c2)), ""); - } - { - typedef std::basic_string<char, std::char_traits<char>, test_allocator<char>> C; - C c1, c2; - static_assert(noexcept(swap(c1, c2)), ""); - } - { - typedef std::basic_string<char, std::char_traits<char>, some_alloc<char>> C; - C c1, c2; - static_assert(!noexcept(swap(c1, c2)), ""); - } -#endif -} |

