On Wed, Oct 1, 2025 at 2:32 PM Jonathan Wakely <[email protected]> wrote:
> These test facets were failing to override the members in the
> std::codecvt base class.
>
> libstdc++-v3/ChangeLog:
>
> * testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc
> (Cvt::do_length): Fix signature to override virtual function in
> base.
> * testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc:
> (Cvt::do_length): Likewise.
> * testsuite/27_io/basic_filebuf/underflow/char/1.cc
> (NoconvCvt::do_in): Likewise.
> * testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc
> (checksumcvt::do_length): Likewise.
> ---
>
> Tested powerpc64le-linux.
>
LGTM.
>
> .../27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc | 2 +-
> .../27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc | 2 +-
> libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc | 2 +-
> .../testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc | 2 +-
> 4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc
> index 052d80fceb72..474a49f83dce 100644
> ---
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc
> +++
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc
> @@ -66,7 +66,7 @@ protected:
>
> virtual int
> do_length(std::mbstate_t&, const char* from, const char* end,
> - std::size_t max)
> + std::size_t max) const
> {
> std::size_t len = (end - from) / sizeof(wchar_t);
> return std::min(len, max) * sizeof(wchar_t);
> diff --git
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc
> index 5767f8aa2a9a..f0d3b59f7b23 100644
> ---
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc
> +++
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc
> @@ -66,7 +66,7 @@ protected:
>
> virtual int
> do_length(std::mbstate_t&, const char* from, const char* end,
> - std::size_t max)
> + std::size_t max) const
> {
> std::size_t len = (end - from) / sizeof(wchar_t);
> return std::min(len, max) * sizeof(wchar_t);
> diff --git
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc
> index a0396a4cf1f7..6d4c71fe9a53 100644
> --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc
> +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc
> @@ -35,7 +35,7 @@ protected:
>
> virtual result
> do_in(state_type&, const char* from, const char*, const char*&
> from_next,
> - char* to, char*, char*& to_next)
> + char* to, char*, char*& to_next) const
> {
> from_next = from;
> to_next = to;
> diff --git
> a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc
> b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc
> index fcd95a9d5e85..c62ad020b0af 100644
> --- a/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc
> +++ b/libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/wchar_t/11603.cc
> @@ -119,7 +119,7 @@ protected:
> { return width; }
>
> virtual int
> - do_length(const StateT&, const extern_type* from,
> + do_length(StateT&, const extern_type* from,
> const extern_type* end, size_t max) const
> {
> size_t len = std::min(max,
> --
> 2.51.0
>
>