diff options
| author | Eric Fiselier <eric@efcs.ca> | 2017-05-12 03:35:53 +0000 |
|---|---|---|
| committer | Eric Fiselier <eric@efcs.ca> | 2017-05-12 03:35:53 +0000 |
| commit | 5b8ab693ab4ae5dd4e53feb5bf65873a1ea428f0 (patch) | |
| tree | d3815d7591a730eeb5fb72bea4be0d7452874787 /libcxx | |
| parent | 5b263d4ce128ab448d123a9e65a3f70e12565d7c (diff) | |
| download | bcm5719-llvm-5b8ab693ab4ae5dd4e53feb5bf65873a1ea428f0.tar.gz bcm5719-llvm-5b8ab693ab4ae5dd4e53feb5bf65873a1ea428f0.zip | |
Remove non-standard basic_string_view::clear() member.
This patch removes the clear() member from <string_view>. The
modifier was removed from the TS before it ever landed in the standard.
There is no reason libc++ should be providing this method.
llvm-svn: 302869
Diffstat (limited to 'libcxx')
| -rw-r--r-- | libcxx/include/string_view | 8 | ||||
| -rw-r--r-- | libcxx/test/std/strings/string.view/string.view.modifiers/clear.pass.cpp | 67 |
2 files changed, 0 insertions, 75 deletions
diff --git a/libcxx/include/string_view b/libcxx/include/string_view index 5c42b36ca56..e59f099f16e 100644 --- a/libcxx/include/string_view +++ b/libcxx/include/string_view @@ -103,7 +103,6 @@ namespace std { constexpr const_pointer data() const noexcept; // 7.7, basic_string_view modifiers - constexpr void clear() noexcept; constexpr void remove_prefix(size_type n); constexpr void remove_suffix(size_type n); constexpr void swap(basic_string_view& s) noexcept; @@ -293,13 +292,6 @@ public: // [string.view.modifiers], modifiers: _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY - void clear() _NOEXCEPT - { - __data = nullptr; - __size = 0; - } - - _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY void remove_prefix(size_type __n) _NOEXCEPT { _LIBCPP_ASSERT(__n <= size(), "remove_prefix() can't remove more than size()"); diff --git a/libcxx/test/std/strings/string.view/string.view.modifiers/clear.pass.cpp b/libcxx/test/std/strings/string.view/string.view.modifiers/clear.pass.cpp deleted file mode 100644 index c1137e80aca..00000000000 --- a/libcxx/test/std/strings/string.view/string.view.modifiers/clear.pass.cpp +++ /dev/null @@ -1,67 +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_view> - -// void clear() noexcept - -#include <string_view> -#include <cassert> - -#include "test_macros.h" - -template<typename CharT> -void test ( const CharT *s, size_t len ) { - typedef std::basic_string_view<CharT> SV; - { - SV sv1 ( s ); - assert ( sv1.size() == len ); - assert ( sv1.data() == s ); - - sv1.clear (); - assert ( sv1.data() == nullptr ); - assert ( sv1.size() == 0 ); - assert ( sv1 == SV()); - } -} - -#if TEST_STD_VER > 11 -constexpr size_t test_ce ( size_t n ) { - typedef std::basic_string_view<char> SV; - SV sv1{ "ABCDEFGHIJKL", n }; - sv1.clear(); - return sv1.size(); -} -#endif - -int main () { - test ( "ABCDE", 5 ); - test ( "a", 1 ); - test ( "", 0 ); - - test ( L"ABCDE", 5 ); - test ( L"a", 1 ); - test ( L"", 0 ); - -#if TEST_STD_VER >= 11 - test ( u"ABCDE", 5 ); - test ( u"a", 1 ); - test ( u"", 0 ); - - test ( U"ABCDE", 5 ); - test ( U"a", 1 ); - test ( U"", 0 ); -#endif - -#if TEST_STD_VER > 11 - static_assert ( test_ce (5) == 0, "" ); -#endif - -} |

