Fix 'libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c' for C23 default (was: [committed] c: Default to -std=gnu23)

Message ID 87zfljmo74.fsf@euler.schwinge.ddns.net
State Committed
Headers
Series Fix 'libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c' for C23 default (was: [committed] c: Default to -std=gnu23) |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm fail Patch failed to apply
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 fail Patch failed to apply

Commit Message

Thomas Schwinge Nov. 28, 2024, 2:23 p.m. UTC
  Hi!

On 2024-11-15T23:46:47+0000, Joseph Myers <josmyers@redhat.com> wrote:
> Change the default language version for C compilation from -std=gnu17
> to -std=gnu23.

Wow, that came quickly.


> A few tests are updated to remove local definitions of
> bool, true and false (where making such an unconditional test change
> seemed to make more sense than changing the test conditionally earlier
> or building it with -std=gnu17); most test issues were already
> addressed in previous patches.

> NOTE: it's likely there are target-specific tests for non-x86 targets
> that need updating as a result of this change.  See commit
> 9fb5348e3021021e82d75e4ca4e6f8d51a34c24f ("testsuite: Prepare for
> -std=gnu23 default") for examples of changes to prepare the testsuite
> to work with a -std=gnu23 default.

Hidden behind effective-target 'openacc_radeon_accel_selected', I ran
into another one; I've pushed to trunk branch
commit bcb764ec7c063326a17eb6213313cc9c0fd348b3
"Fix 'libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c' for C23 default",
see attached.


Grüße
 Thomas
  

Patch

From bcb764ec7c063326a17eb6213313cc9c0fd348b3 Mon Sep 17 00:00:00 2001
From: Thomas Schwinge <tschwinge@baylibre.com>
Date: Thu, 28 Nov 2024 15:14:20 +0100
Subject: [PATCH] Fix
 'libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c' for C23
 default

With commit 55e3bd376b2214e200fa76d12b67ff259b06c212 "c: Default to -std=gnu23"
we've got:

    [-PASS:-]{+FAIL:+} libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c -DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  (test for excess errors)
    [-PASS:-]{+UNRESOLVED:+} libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c -DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  [-execution test-]{+compilation failed to produce executable+}
    [Etc.]

..., due to:

    [...]/libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c:16:13: error: two or more data types in declaration specifiers
    [...]/libgomp.oacc-c/../libgomp.oacc-c-c++-common/acc_get_property-gcn.c:16:1: warning: useless type name in empty declaration

	libgomp/
	* testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c
	[!__cplusplus]: Don't 'typedef int bool;'.
---
 .../testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c
index 4b1fb5e0e761..ab8fc6c276be 100644
--- a/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c
+++ b/libgomp/testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c
@@ -12,9 +12,6 @@ 
 #include <string.h>
 #include <openacc.h>
 
-#ifndef __cplusplus
-typedef int bool;
-#endif
 #include <hsa.h>
 
 
-- 
2.34.1