https://gcc.gnu.org/g:081b7738b695cd553a6aeda22370524844c00e81

commit r16-4159-g081b7738b695cd553a6aeda22370524844c00e81
Author: Jonathan Wakely <[email protected]>
Date:   Tue Sep 30 17:13:03 2025 +0100

    libstdc++: Fix incorrect overriders in filebuf tests
    
    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.
    
    Reviewed-by: Tomasz KamiƄski <[email protected]>

Diff:
---
 .../testsuite/27_io/basic_filebuf/seekoff/wchar_t/9875_seekoff.cc       | 2 +-
 .../testsuite/27_io/basic_filebuf/seekpos/wchar_t/9875_seekpos.cc       | 2 +-
 libstdc++-v3/testsuite/27_io/basic_filebuf/underflow/char/1.cc          | 2 +-
 libstdc++-v3/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,

Reply via email to