diff options
author | Dimitrij Mijoski <dmjpp@hotmail.com> | 2023-01-17 22:12:12 +0100 |
---|---|---|
committer | Jonathan Wakely <jwakely@redhat.com> | 2023-01-18 18:53:11 +0000 |
commit | 7d0cdbbcdd1c9e5e709d0be7d1843e8c1045fd16 (patch) | |
tree | 5004eb3f7aebaa774ba8a36c0808fbe2b4782e50 /libstdc++-v3/testsuite/22_locale | |
parent | c6a011119bfa038ccbfc9f123ede14a3d6237fab (diff) | |
download | gcc-7d0cdbbcdd1c9e5e709d0be7d1843e8c1045fd16.zip gcc-7d0cdbbcdd1c9e5e709d0be7d1843e8c1045fd16.tar.gz gcc-7d0cdbbcdd1c9e5e709d0be7d1843e8c1045fd16.tar.bz2 |
libstdc++: testsuite: Simplify codecvt_unicode
Stop using unique_ptr, create some objects directly.
libstdc++-v3/ChangeLog:
* testsuite/22_locale/codecvt/codecvt_unicode.cc: Simplify.
* testsuite/22_locale/codecvt/codecvt_unicode.h: Simplify.
* testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc: Simplify.
Diffstat (limited to 'libstdc++-v3/testsuite/22_locale')
3 files changed, 17 insertions, 22 deletions
diff --git a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.cc b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.cc index ae4b6c8..df1a2b4 100644 --- a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.cc +++ b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.cc @@ -29,11 +29,12 @@ test_utf8_utf32_codecvts () using codecvt_c32 = codecvt<char32_t, char, mbstate_t>; auto loc_c = locale::classic (); VERIFY (has_facet<codecvt_c32> (loc_c)); + auto &cvt = use_facet<codecvt_c32> (loc_c); test_utf8_utf32_codecvts (cvt); - auto cvt_ptr = to_unique_ptr (new codecvt_utf8<char32_t> ()); - test_utf8_utf32_codecvts (*cvt_ptr); + codecvt_utf8<char32_t> cvt2; + test_utf8_utf32_codecvts (cvt2); } void @@ -42,21 +43,22 @@ test_utf8_utf16_codecvts () using codecvt_c16 = codecvt<char16_t, char, mbstate_t>; auto loc_c = locale::classic (); VERIFY (has_facet<codecvt_c16> (loc_c)); + auto &cvt = use_facet<codecvt_c16> (loc_c); test_utf8_utf16_cvts (cvt); - auto cvt_ptr = to_unique_ptr (new codecvt_utf8_utf16<char16_t> ()); - test_utf8_utf16_cvts (*cvt_ptr); + codecvt_utf8_utf16<char16_t> cvt2; + test_utf8_utf16_cvts (cvt2); - auto cvt_ptr2 = to_unique_ptr (new codecvt_utf8_utf16<char32_t> ()); - test_utf8_utf16_cvts (*cvt_ptr2); + codecvt_utf8_utf16<char32_t> cvt3; + test_utf8_utf16_cvts (cvt3); } void test_utf8_ucs2_codecvts () { - auto cvt_ptr = to_unique_ptr (new codecvt_utf8<char16_t> ()); - test_utf8_ucs2_cvts (*cvt_ptr); + codecvt_utf8<char16_t> cvt; + test_utf8_ucs2_cvts (cvt); } int diff --git a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.h b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.h index 99d1a468..fbdc7a3 100644 --- a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.h +++ b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode.h @@ -15,18 +15,11 @@ // with this library; see the file COPYING3. If not see // <http://www.gnu.org/licenses/>. +#include <algorithm> #include <locale> #include <string> -#include <memory> #include <testsuite_hooks.h> -template <typename T> -std::unique_ptr<T> -to_unique_ptr (T *ptr) -{ - return std::unique_ptr<T> (ptr); -} - struct test_offsets_ok { size_t in_size, out_size; diff --git a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc index 1695049..4fd1bfe 100644 --- a/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc +++ b/libstdc++-v3/testsuite/22_locale/codecvt/codecvt_unicode_wchar_t.cc @@ -27,8 +27,8 @@ void test_utf8_utf32_codecvts () { #if __SIZEOF_WCHAR_T__ == 4 - auto cvt_ptr = to_unique_ptr (new codecvt_utf8<wchar_t> ()); - test_utf8_utf32_codecvts (*cvt_ptr); + codecvt_utf8<wchar_t> cvt; + test_utf8_utf32_codecvts (cvt); #endif } @@ -36,8 +36,8 @@ void test_utf8_utf16_codecvts () { #if __SIZEOF_WCHAR_T__ >= 2 - auto cvt_ptr = to_unique_ptr (new codecvt_utf8_utf16<wchar_t> ()); - test_utf8_utf16_cvts (*cvt_ptr); + codecvt_utf8_utf16<wchar_t> cvt; + test_utf8_utf16_cvts (cvt); #endif } @@ -45,8 +45,8 @@ void test_utf8_ucs2_codecvts () { #if __SIZEOF_WCHAR_T__ == 2 - auto cvt_ptr = to_unique_ptr (new codecvt_utf8<wchar_t> ()); - test_utf8_ucs2_cvts (*cvt_ptr); + codecvt_utf8<wchar_t> cvt; + test_utf8_ucs2_cvts (cvt); #endif } |