aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2022-08-26 16:22:21 +0100
committerJonathan Wakely <jwakely@redhat.com>2022-08-31 10:28:46 +0100
commitb911ca4231a366ddfd026f190b126bd517f4e640 (patch)
tree494d307eeb67a6eefcd2b7f5081ac7b727b6a2ee /libstdc++-v3/testsuite
parentbeec815f26bcb7041a824e0f7180855d364e2271 (diff)
downloadgcc-b911ca4231a366ddfd026f190b126bd517f4e640.zip
gcc-b911ca4231a366ddfd026f190b126bd517f4e640.tar.gz
gcc-b911ca4231a366ddfd026f190b126bd517f4e640.tar.bz2
libstdc++: Add [[nodiscard]] attribute to <string> and <string_view>
libstdc++-v3/ChangeLog: * include/bits/basic_string.h (basic_string): Add nodiscard attribute to all relevant functions. * include/std/string_view (basic_string_view): Likewise. * testsuite/21_strings/basic_string/capacity/1.cc: Cast unused results to void. * testsuite/21_strings/basic_string/capacity/char/1.cc: Likewise. * testsuite/21_strings/basic_string/capacity/wchar_t/1.cc: Likewise. * testsuite/21_strings/basic_string/cons/char/self_move.cc: Likewise. * testsuite/21_strings/basic_string/element_access/char/1.cc: Likewise. * testsuite/21_strings/basic_string/element_access/char/21674.cc: Likewise. * testsuite/21_strings/basic_string/element_access/wchar_t/1.cc: Likewise. * testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc: Likewise. * testsuite/21_strings/basic_string/lwg2758.cc: Likewise. * testsuite/21_strings/basic_string/lwg2946.cc: Likewise. * testsuite/21_strings/basic_string/operations/contains/nonnull.cc: Add -Wno-unused-result to options. * testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc: Likewise. * testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc: Likewise. * testsuite/21_strings/basic_string/operators/char/1.cc: Cast unused results to void. * testsuite/21_strings/basic_string/operators/wchar_t/1.cc: Likewise. * testsuite/21_strings/basic_string_view/capacity/1.cc: Likewise. * testsuite/21_strings/basic_string_view/element_access/char/1.cc: Likewise. * testsuite/21_strings/basic_string_view/element_access/char/2.cc: Likewise. * testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc: Likewise. * testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc: Likewise. * testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc: Likewise. Add -Wno-unused-result to options. * testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc: Likewise. * testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc: Likewise. * testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc: Cast unused results to void. * testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc: Likewise. * testsuite/27_io/basic_stringbuf/sungetc/char/1.cc: Likewise. * testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc: Likewise.
Diffstat (limited to 'libstdc++-v3/testsuite')
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/capacity/1.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/capacity/char/1.cc6
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/capacity/wchar_t/1.cc6
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/cons/char/self_move.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/1.cc4
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/21674.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/1.cc4
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/lwg2758.cc4
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/lwg2946.cc16
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/operations/contains/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/operators/char/1.cc4
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/operators/wchar_t/1.cc4
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/capacity/1.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/1.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/2.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc2
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc10
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc10
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc10
-rw-r--r--libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc10
27 files changed, 59 insertions, 59 deletions
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/1.cc
index 45af457..1ae4d3d 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/1.cc
@@ -175,7 +175,7 @@ void test01()
sz03 = str02.size();
sz04 = str02.length();
VERIFY( sz03 == sz04 );
- str02.c_str();
+ (void) str02.c_str();
sz03 = str02.size();
sz04 = str02.length();
VERIFY( sz03 == sz04 );
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/char/1.cc
index 244a795..1da273b 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/char/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/char/1.cc
@@ -74,15 +74,15 @@ void test01()
sz01 = str01.size();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
- str01.c_str();
+ (void) str01.c_str();
sz01 = str01.size();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
sz01 = str01.length();
- str01.c_str();
+ (void) str01.c_str();
str011 = str01 + "_addendum_";
- str01.c_str();
+ (void) str01.c_str();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
sz02 = str011.length();
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/wchar_t/1.cc
index 5cb682e..6f03e34 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/capacity/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/capacity/wchar_t/1.cc
@@ -71,15 +71,15 @@ void test01()
sz01 = str01.size();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
- str01.c_str();
+ (void) str01.c_str();
sz01 = str01.size();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
sz01 = str01.length();
- str01.c_str();
+ (void) str01.c_str();
str011 = str01 + L"_addendum_";
- str01.c_str();
+ (void) str01.c_str();
sz02 = str01.length();
VERIFY( sz01 == sz02 );
sz02 = str011.length();
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/self_move.cc b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/self_move.cc
index d37fe39..ddd9aea 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/self_move.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/cons/char/self_move.cc
@@ -32,7 +32,7 @@ test(const char* s)
String s3 __attribute__((unused)) = s1;
s1 = std::move(s1);
- s1.begin(); // causes COW string to "leak"
+ (void) s1.begin(); // causes COW string to "leak"
s1 = std::move(s1);
String s4 __attribute__((unused)) = s1;
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/1.cc
index 7fb4323..5a176c0 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/1.cc
@@ -53,7 +53,7 @@ void test01(void)
cref cref3 = str01.at(csz01 - 1);
VERIFY( cref3 == 'a' );
try {
- str01.at(csz01);
+ (void) str01.at(csz01);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch(std::out_of_range& fail) {
@@ -68,7 +68,7 @@ void test01(void)
ref ref3 = str02.at(csz02 - 1);
VERIFY( ref3 == 'a' );
try {
- str02.at(csz02);
+ (void) str02.at(csz02);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch(std::out_of_range& fail) {
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/21674.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/21674.cc
index a5a129b..3ff8d51 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/21674.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/char/21674.cc
@@ -27,5 +27,5 @@ int main()
{
typedef std::string string_type;
string_type s;
- s[1]; // abort
+ (void) s[1]; // abort
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/1.cc
index 9bb5dcb..f9a07ab 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/1.cc
@@ -53,7 +53,7 @@ void test01(void)
cref cref3 = str01.at(csz01 - 1);
VERIFY( cref3 == L'a' );
try {
- str01.at(csz01);
+ (void) str01.at(csz01);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch(std::out_of_range& fail) {
@@ -68,7 +68,7 @@ void test01(void)
ref ref3 = str02.at(csz02 - 1);
VERIFY( ref3 == L'a' );
try {
- str02.at(csz02);
+ (void) str02.at(csz02);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch(std::out_of_range& fail) {
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc
index 974e6b2..fc023a8 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/element_access/wchar_t/21674.cc
@@ -27,5 +27,5 @@ int main()
{
typedef std::wstring string_type;
string_type s;
- s[1]; // abort
+ (void) s[1]; // abort
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/lwg2758.cc b/libstdc++-v3/testsuite/21_strings/basic_string/lwg2758.cc
index 45d514b..a9dcd9a 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/lwg2758.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/lwg2758.cc
@@ -40,6 +40,6 @@ int main()
x.replace(0, 3, "foo", 0, 3);
x.replace(0, 3, cs, 0, 3);
x = "bar";
- x.compare(0, 3, "foo", 0, 3);
- x.compare(0, 3, cs, 0, 3);
+ (void) x.compare(0, 3, "foo", 0, 3);
+ (void) x.compare(0, 3, cs, 0, 3);
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/lwg2946.cc b/libstdc++-v3/testsuite/21_strings/basic_string/lwg2946.cc
index 3cbaf17..6e308ba 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/lwg2946.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/lwg2946.cc
@@ -29,12 +29,12 @@ int main()
s.insert(0, {"abc", 1});
s.replace(0, 1, {"abc", 1});
s.replace(s.begin(), s.begin(), {"abc", 1});
- s.find({"abc", 1});
- s.rfind({"abc", 1});
- s.find_first_of({"abc", 1});
- s.find_last_of({"abc", 1});
- s.find_first_not_of({"abc", 1});
- s.find_last_not_of({"abc", 1});
- s.compare({"abc", 1});
- s.compare(0, 1, {"abc", 1});
+ (void) s.find({"abc", 1});
+ (void) s.rfind({"abc", 1});
+ (void) s.find_first_of({"abc", 1});
+ (void) s.find_last_of({"abc", 1});
+ (void) s.find_first_not_of({"abc", 1});
+ (void) s.find_last_not_of({"abc", 1});
+ (void) s.compare({"abc", 1});
+ (void) s.compare(0, 1, {"abc", 1});
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operations/contains/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operations/contains/nonnull.cc
index e987cb7..41bb391 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/operations/contains/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/operations/contains/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++23 -Wnonnull -O0" }
+// { dg-options "-std=gnu++23 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++23 } }
#include <string>
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc
index 1f2a156..32f3449 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/operations/ends_with/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++20 -Wnonnull -O0" }
+// { dg-options "-std=gnu++20 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++20 } }
#include <string>
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc
index 8514359..9e0d665 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/operations/starts_with/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++20 -Wnonnull -O0" }
+// { dg-options "-std=gnu++20 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++20 } }
#include <string>
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operators/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operators/char/1.cc
index 704d2f6..be3e41a 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/operators/char/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/operators/char/1.cc
@@ -35,12 +35,12 @@ int test01(void)
// 2:8-chars_8-chars_
// The following triggers -Wstringop-overread. See PR 103332.
str1 = std::string("8-chars_") + "8-chars_";
- str1.c_str();
+ (void) str1.c_str();
// printf("1:%s\n", str1.c_str());
VERIFY( str1 == "8-chars_8-chars_" );
str2 = str1 + "7-chars";
// printf("2:%s\n", str1.c_str()); //str1 is gone
- str1.c_str();
+ (void) str1.c_str();
VERIFY( str1 == "8-chars_8-chars_" );
return 0;
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/operators/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string/operators/wchar_t/1.cc
index 4020950..df3ff7c 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/operators/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/operators/wchar_t/1.cc
@@ -32,11 +32,11 @@ int test01(void)
// 1:8-chars_8-chars_
// 2:8-chars_8-chars_
str1 = std::wstring(L"8-chars_") + L"8-chars_";
- str1.c_str();
+ (void) str1.c_str();
// wprintf("1:%s\n", str1.c_str());
str2 = str1 + L"7-chars";
// wprintf("2:%s\n", str1.c_str()); //str1 is gone
- str1.c_str();
+ (void) str1.c_str();
return 0;
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/capacity/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/capacity/1.cc
index 0376d91..3d162c6 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/capacity/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/capacity/1.cc
@@ -137,7 +137,7 @@ test01()
sz03 = str02.size();
sz04 = str02.length();
VERIFY( sz03 == sz04 );
- str02.data();
+ (void) str02.data();
sz03 = str02.size();
sz04 = str02.length();
VERIFY( sz03 == sz04 );
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/1.cc
index 5de62ec..b27e7d7 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/1.cc
@@ -49,7 +49,7 @@ test01()
VERIFY( cref3 == 'a' );
try
{
- str01.at(csz01);
+ (void) str01.at(csz01);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch (std::out_of_range& fail)
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/2.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/2.cc
index e8f9db2..834d3f6 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/2.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/char/2.cc
@@ -27,5 +27,5 @@ main()
{
typedef std::string_view string_view_type;
string_view_type s;
- s[0]; // abort
+ (void) s[0]; // abort
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc
index 9877cd8..e9df872 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/1.cc
@@ -49,7 +49,7 @@ test01()
VERIFY( cref3 == L'a' );
try
{
- str01.at(csz01);
+ (void) str01.at(csz01);
VERIFY( false ); // Should not get here, as exception thrown.
}
catch (std::out_of_range& fail)
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc
index 23daa7a..840de84 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/element_access/wchar_t/2.cc
@@ -29,5 +29,5 @@ main()
{
typedef std::wstring_view string_view_type;
string_view_type s;
- s[0]; // abort
+ (void) s[0]; // abort
}
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc
index c0d274f..fafadcc 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/contains/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++23 -Wnonnull -O0" }
+// { dg-options "-std=gnu++23 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++23 } }
#include <string_view>
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc
index 09a9997..50437bb 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/ends_with/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++20 -Wnonnull -O0" }
+// { dg-options "-std=gnu++20 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++20 } }
#include <string_view>
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc
index c47f1da..fedba28a 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string_view/operations/starts_with/nonnull.cc
@@ -1,4 +1,4 @@
-// { dg-options "-std=gnu++20 -Wnonnull -O0" }
+// { dg-options "-std=gnu++20 -Wnonnull -O0 -Wno-unused-result" }
// { dg-do compile { target c++20 } }
#include <string_view>
diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc
index 1e8c5fd..2296fd1 100644
--- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/char/1.cc
@@ -41,18 +41,18 @@ void test04()
// PUT
strb_03.str(str_01); //reset
- strb_03.str().length();
- strb_03.str().length();
+ (void) strb_03.str().length();
+ (void) strb_03.str().length();
// streamsize sputn(const char_typs* s, streamsize n)
// write up to n chars to out_cur from s, returning number assigned
// NB *sputn will happily put '\0' into your stream if you give it a chance*
str_tmp = strb_03.str();
- str_tmp.length();
+ (void) str_tmp.length();
strb_03.sputn("racadabras", 10);//"abracadabras or what?"
- strb_03.str().length();
+ (void) strb_03.str().length();
strb_03.sputn(", i wanna reach out and", 10);
- strb_03.str().length();
+ (void) strb_03.str().length();
str_tmp = strb_02.str();
strb_02.sputn("racadabra", 10);
diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc
index 6acc0f24..c44a535 100644
--- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sputbackc/wchar_t/1.cc
@@ -41,18 +41,18 @@ void test04()
// PUT
strb_03.str(str_01); //reset
- strb_03.str().length();
- strb_03.str().length();
+ (void) strb_03.str().length();
+ (void) strb_03.str().length();
// streamsize sputn(const char_typs* s, streamsize n)
// write up to n chars to out_cur from s, returning number assigned
// NB *sputn will happily put '\0' into your stream if you give it a chance*
str_tmp = strb_03.str();
- str_tmp.length();
+ (void) str_tmp.length();
strb_03.sputn(L"racadabras", 10);//"abracadabras or what?"
- strb_03.str().length();
+ (void) strb_03.str().length();
strb_03.sputn(L", i wanna reach out and", 10);
- strb_03.str().length();
+ (void) strb_03.str().length();
str_tmp = strb_02.str();
strb_02.sputn(L"racadabra", 10);
diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc
index 2a3a28b..b4cdb17 100644
--- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/char/1.cc
@@ -41,18 +41,18 @@ void test04()
// PUT
strb_03.str(str_01); //reset
- strb_03.str().length();
- strb_03.str().length();
+ (void) strb_03.str().length();
+ (void) strb_03.str().length();
// streamsize sputn(const char_typs* s, streamsize n)
// write up to n chars to out_cur from s, returning number assigned
// NB *sputn will happily put '\0' into your stream if you give it a chance*
str_tmp = strb_03.str();
- str_tmp.length();
+ (void) str_tmp.length();
strb_03.sputn("racadabras", 10);//"abracadabras or what?"
- strb_03.str().length();
+ (void) strb_03.str().length();
strb_03.sputn(", i wanna reach out and", 10);
- strb_03.str().length();
+ (void) strb_03.str().length();
str_tmp = strb_02.str();
strb_02.sputn("racadabra", 10);
diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc
index 5f20e2c..eb0ae5e 100644
--- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc
+++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/sungetc/wchar_t/1.cc
@@ -41,18 +41,18 @@ void test04()
// PUT
strb_03.str(str_01); //reset
- strb_03.str().length();
- strb_03.str().length();
+ (void) strb_03.str().length();
+ (void) strb_03.str().length();
// streamsize sputn(const char_typs* s, streamsize n)
// write up to n chars to out_cur from s, returning number assigned
// NB *sputn will happily put '\0' into your stream if you give it a chance*
str_tmp = strb_03.str();
- str_tmp.length();
+ (void) str_tmp.length();
strb_03.sputn(L"racadabras", 10);//"abracadabras or what?"
- strb_03.str().length();
+ (void) strb_03.str().length();
strb_03.sputn(L", i wanna reach out and", 10);
- strb_03.str().length();
+ (void) strb_03.str().length();
str_tmp = strb_02.str();
strb_02.sputn(L"racadabra", 10);