[Bug libstdc++/98725] Review what is disabled in libstdc++ by --disable-wchar_t

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Oct 9 00:15:39 GMT 2021


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98725

--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jonathan Wakely <redi@gcc.gnu.org>:

https://gcc.gnu.org/g:fec283b63d7f24f4c37792dd07ab1055186ba88f

commit r12-4268-gfec283b63d7f24f4c37792dd07ab1055186ba88f
Author: Jonathan Wakely <jwakely@redhat.com>
Date:   Fri Oct 8 20:48:35 2021 +0100

    libstdc++: Remove unnecessary uses of _GLIBCXX_USE_WCHAR_T in testsuite
[PR98725]

    Now that std::wstring and other specializations for wchar_t are defined
    unconditionally, many checks for _GLIBCXX_USE_WCHAR_T in the testsuite
    are unnecessary and can be removed. Tests for iostreams, locales, regex
    and filesystem::path still need to be guarded by _GLIBCXX_USE_WCHAR_T
    because those components depend on libc support in <wchar.h> and other
    headers.

    libstdc++-v3/ChangeLog:

            PR libstdc++/98725
            * testsuite/18_support/numeric_limits/lowest.cc: Remove use of
            _GLIBCXX_USE_WCHAR_T.
            * testsuite/18_support/numeric_limits/min_max.cc: Replace use of
            _GLIBCXX_USE_WCHAR_T with checks for WCHAR_MIN and WCHAR_MAX.
            * testsuite/20_util/from_chars/1_neg.cc: Remove use of
            _GLIBCXX_USE_WCHAR_T.
            * testsuite/20_util/function_objects/searchers.cc: Likewise. Use
            char_traits<wchar_t>::length instead of wcslen.
            * testsuite/20_util/hash/requirements/explicit_instantiation.cc:
            Likewise.
            * testsuite/20_util/is_arithmetic/value.cc: Likewise.
            * testsuite/20_util/is_compound/value.cc: Likewise.
            * testsuite/20_util/is_floating_point/value.cc: Likewise.
            * testsuite/20_util/is_fundamental/value.cc: Likewise.
            * testsuite/20_util/is_integral/value.cc: Likewise.
            * testsuite/20_util/is_signed/value.cc: Likewise.
            * testsuite/20_util/is_unsigned/value.cc: Likewise.
            * testsuite/20_util/is_void/value.cc: Likewise.
            * testsuite/20_util/make_signed/requirements/typedefs-1.cc:
            Likewise.
            * testsuite/20_util/make_signed/requirements/typedefs-2.cc:
            Likewise.
            * testsuite/20_util/make_signed/requirements/typedefs-3.cc:
            Likewise.
            * testsuite/20_util/make_signed/requirements/typedefs-4.cc:
            Likewise.
            * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc:
            Likewise.
            * testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
            Likewise.
            * testsuite/20_util/make_unsigned/requirements/typedefs-3.cc:
            Likewise.
            * testsuite/20_util/to_chars/3.cc: Likewise.
            * testsuite/20_util/type_identity/requirements/typedefs.cc:
            Likewise.
            * testsuite/21_strings/basic_string/hash/debug.cc: Likewise.
            * testsuite/21_strings/basic_string/hash/hash.cc: Likewise.
            * testsuite/21_strings/basic_string/literals/types-char8_t.cc:
            Likewise.
            * testsuite/21_strings/basic_string/literals/types.cc: Likewise.
            * testsuite/21_strings/basic_string/literals/values-char8_t.cc:
            Likewise.
            * testsuite/21_strings/basic_string/literals/values.cc:
            Likewise.
            * testsuite/21_strings/basic_string/modifiers/64422.cc:
            Likewise.
            * testsuite/21_strings/basic_string/range_access/wchar_t/1.cc:
            Likewise.
            * testsuite/21_strings/basic_string/requirements/citerators.cc:
            Likewise.
            * testsuite/21_strings/basic_string/requirements/typedefs.cc:
            Likewise.
            * testsuite/21_strings/basic_string/types/pmr_typedefs.cc:
            Likewise.
            * testsuite/21_strings/basic_string_view/literals/types-char8_t.cc:
            Likewise.
            * testsuite/21_strings/basic_string_view/literals/types.cc:
            Likewise.
            *
testsuite/21_strings/basic_string_view/literals/values-char8_t.cc:
            Likewise.
            * testsuite/21_strings/basic_string_view/literals/values.cc:
            Likewise.
            * testsuite/21_strings/basic_string_view/requirements/typedefs.cc:
            Likewise.
            * testsuite/21_strings/basic_string_view/typedefs.cc: Likewise.
            *
testsuite/21_strings/char_traits/requirements/constexpr_functions.cc:
            Likewise.
            *
testsuite/21_strings/char_traits/requirements/constexpr_functions_c++17.cc:
            Likewise.
            *
testsuite/21_strings/char_traits/requirements/constexpr_functions_c++20.cc:
            Likewise.
            * testsuite/22_locale/ctype/is/string/89728_neg.cc: Likewise.
            * testsuite/25_algorithms/fill/4.cc: Likewise.
            * testsuite/25_algorithms/fill_n/1.cc: Likewise.
            * testsuite/experimental/functional/searchers.cc: Likewise. Use
            char_traits<wchar_t>::length instead of wcslen.
            *
testsuite/experimental/polymorphic_allocator/pmr_typedefs_string.cc:
            Likewise.
            * testsuite/experimental/string_view/literals/types-char8_t.cc:
            Likewise.
            * testsuite/experimental/string_view/literals/types.cc:
            Likewise.
            * testsuite/experimental/string_view/literals/values-char8_t.cc:
            Likewise.
            * testsuite/experimental/string_view/literals/values.cc:
            Likewise.
            * testsuite/experimental/string_view/range_access/wchar_t/1.cc:
            Likewise.
            * testsuite/experimental/string_view/requirements/typedefs.cc:
            Likewise.
            * testsuite/experimental/string_view/typedefs.cc: Likewise.
            * testsuite/ext/vstring/range_access.cc: Likewise.
            *
testsuite/std/concepts/concepts.lang/concept.arithmetic/integral.cc:
            Likewise.
            *
testsuite/std/concepts/concepts.lang/concept.arithmetic/signed_integral.cc:
            Likewise.
            *
testsuite/std/concepts/concepts.lang/concept.arithmetic/unsigned_integral.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_arithmetic/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_compound/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_floating_point/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_fundamental/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_integral/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_signed/value.cc: Likewise.
            * testsuite/tr1/4_metaprogramming/is_unsigned/value.cc:
            Likewise.
            * testsuite/tr1/4_metaprogramming/is_void/value.cc: Likewise.
            * testsuite/tr1/6_containers/hash/24799.cc: Likewise.


More information about the Gcc-bugs mailing list