]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
OpenMP: Fix declaration in append-args-interop.c test case
authorSandra Loosemore <sloosemore@baylibre.com>
Thu, 27 Mar 2025 00:59:37 +0000 (00:59 +0000)
committerSandra Loosemore <sloosemore@baylibre.com>
Thu, 27 Mar 2025 01:52:57 +0000 (01:52 +0000)
I ran into this while backporting my declare variant/dispatch/interop
patch f016ee89955ab4da5fe7ef89368e9437bb5ffb13 to the og14 development
branch.  In C dialects prior to C23 (the default on mainline),
functions declared "float f()" and "float g(void)" aren't considered
equivalent for the purpose of the C front end code that checks whether
a type of a variant matches the base function after accounting for the
added interop arguments.  Using "(void)" instead of "()" works in all
C dialects as well as C++, so do that.

gcc/testsuite/ChangeLog
* c-c++-common/gomp/append-args-interop.c: Fix declaration of base
function to be correct for pre-C23 dialects.

gcc/testsuite/c-c++-common/gomp/append-args-interop.c

index 9494625cbbbc1c0f84d293b61729fee348456fcc..1211450ce63e853a00b6eef7f9fe40f8dcd9887a 100644 (file)
@@ -23,7 +23,7 @@ typedef enum omp_interop_t __GOMP_UINTPTR_T_ENUM
 float repl1(omp_interop_t, omp_interop_t, omp_interop_t);
 
 #pragma omp declare variant(repl1) match(construct={dispatch}) append_args(interop(target), interop(targetsync), interop (target))
-float base1();
+float base1(void);
 
 float
 test (int *a, int *b)