diff mbox series

[pushed] testsuite, c++, coroutines: Avoid 'unused' warnings [NFC].

Message ID 20240831163452.48199-1-iain@sandoe.co.uk
State New
Headers show
Series [pushed] testsuite, c++, coroutines: Avoid 'unused' warnings [NFC]. | expand

Commit Message

Iain Sandoe Aug. 31, 2024, 4:34 p.m. UTC
tested on x86_64-darwin/linux powerpc64le-linux, pushed to trunk,
thanks
Iain

--- 8< ---

The 'torture' section of the coroutine tests is primarily about checking
correct operation of the generated code.  It should, ideally, be possible
to run this part of the testsuite with '-Wall' and expect no fails.  In
the case that we wish to test for a specific diagnostic (and that it does
not appear over a range of optimisation/debug conditions) then we should
make that explict (as done, for example, in pr109867.C).

The tests amended here have warnings because of unused entities; in many
cases those are relevant to the test, and so we just mark them with
__attribute__((__unused__)).

We amend the debug output in coro.h to avoid similar warnings when print
output is disabled (the default).

gcc/testsuite/ChangeLog:

	* g++.dg/coroutines/coro.h: Use a variadic macro for PRINTF to
	avoid unused warnings when output is disabled.
	* g++.dg/coroutines/torture/co-await-04-control-flow.C: Avoid
	unused warnings.
	* g++.dg/coroutines/torture/co-ret-13-template-2.C: Likewise.
	* g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C: Likewise.
	* g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C:
	Likewise.
	* g++.dg/coroutines/torture/pr109867.C: Likewise.

Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
---
 gcc/testsuite/g++.dg/coroutines/coro.h                        | 4 ++--
 .../g++.dg/coroutines/torture/co-await-04-control-flow.C      | 1 +
 .../g++.dg/coroutines/torture/co-ret-13-template-2.C          | 2 +-
 .../g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C    | 1 -
 .../coroutines/torture/local-var-04-hiding-nested-scopes.C    | 4 ++--
 gcc/testsuite/g++.dg/coroutines/torture/pr109867.C            | 2 +-
 6 files changed, 7 insertions(+), 7 deletions(-)
diff mbox series

Patch

diff --git a/gcc/testsuite/g++.dg/coroutines/coro.h b/gcc/testsuite/g++.dg/coroutines/coro.h
index 491177f0cfd..71c1cd73207 100644
--- a/gcc/testsuite/g++.dg/coroutines/coro.h
+++ b/gcc/testsuite/g++.dg/coroutines/coro.h
@@ -135,9 +135,9 @@  namespace coro = std;
 
 #ifndef OUTPUT
 #  define PRINT(X)
-#  define PRINTF (void)
+#  define PRINTF(...)
 #else
 #include <stdio.h>
 #  define PRINT(X) puts(X)
-#  define PRINTF printf
+#  define PRINTF(...) printf(__VA_ARGS__)
 #endif
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/co-await-04-control-flow.C b/gcc/testsuite/g++.dg/coroutines/torture/co-await-04-control-flow.C
index fd201f90481..32d9c982d4a 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/co-await-04-control-flow.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/co-await-04-control-flow.C
@@ -1,4 +1,5 @@ 
 //  { dg-do run }
+//  { dg-additional-options "-Wno-unused-label" }
 
 // Check correct operation of await transform.
 
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/co-ret-13-template-2.C b/gcc/testsuite/g++.dg/coroutines/torture/co-ret-13-template-2.C
index 9d4a4de8ebe..8a8d2d6fa5d 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/co-ret-13-template-2.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/co-ret-13-template-2.C
@@ -13,7 +13,7 @@  coro1
 f (T y) noexcept
 {
   PRINT ("coro1: about to return");
-  T x = y;
+  __attribute__((__unused__)) T x = y;
   co_return 3;
 }
 
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C b/gcc/testsuite/g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C
index 6433b62109f..c5a0a38b2ca 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/exceptions-test-01-n4849-a.C
@@ -116,7 +116,6 @@  struct coro1 {
 struct coro1
 n4849_ia_thrower (int k)
 {
-  int caught = 0;
   PRINT ("f: about to return 22");
   co_return 22;
 }
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C b/gcc/testsuite/g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C
index 419eb6b6467..04c1ab362d2 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C
@@ -13,9 +13,9 @@  f (int start) noexcept
 {
   int value = start;
   {
-    int value = start + 5;
+    __attribute__((__unused__)) int value = start + 5;
     {
-	int value = start + 20;
+	__attribute__((__unused__)) int value = start + 20;
     }
     {
 	int value = start + 1;
diff --git a/gcc/testsuite/g++.dg/coroutines/torture/pr109867.C b/gcc/testsuite/g++.dg/coroutines/torture/pr109867.C
index d4663771ea4..8c90cf85ebb 100644
--- a/gcc/testsuite/g++.dg/coroutines/torture/pr109867.C
+++ b/gcc/testsuite/g++.dg/coroutines/torture/pr109867.C
@@ -16,7 +16,7 @@  struct task
 
 int main()
 {
-    auto t = []() -> task
+    __attribute__((__unused__)) auto t = []() -> task
     {
         co_return 2;
     }();