diff options
author | Hans-Peter Nilsson <hp@axis.com> | 2025-03-22 18:27:10 +0100 |
---|---|---|
committer | Hans-Peter Nilsson <hp@gcc.gnu.org> | 2025-03-22 18:56:37 +0100 |
commit | 45d54c70ec54af889053888897626f6912c512ab (patch) | |
tree | aa4df984db56bc0c10cf954920b52fef1d3b6571 | |
parent | 6d75bb5fe8057ab627a59d122420b996674760e4 (diff) | |
download | gcc-45d54c70ec54af889053888897626f6912c512ab.zip gcc-45d54c70ec54af889053888897626f6912c512ab.tar.gz gcc-45d54c70ec54af889053888897626f6912c512ab.tar.bz2 |
libgfortran/intrinsics: Fix build for targets with int32_t=long int
Without this, after r15-8650-g94fa9f4d27bac5, you'll see,
for targets where GFC_INTEGER_4 alias int32_t is a typedef
of long int (beware of artificially broken lines):
/x/gcc/libgfortran/intrinsics/reduce.c:269:1: error: conflicting types for 'reduce_scalar_c'; have 'void(void *, index_type, parray *, void (*)(void *, void *, void *), int *, gfc_array_l4 *, void *, void *, index_type, index_type)' {aka 'void(void *, long int, parray *, void (*)(void *, void *, void *), int *, gfc_array_l4 *, void *, void *, long int, long int)'}
269 | reduce_scalar_c (void *res,
| ^~~~~~~~~~~~~~~
[...] excessive error message verbiage deleted
/x/gcc/libgfortran/intrinsics/reduce.c: In function 'reduce_scalar_c':
/x/gcc/libgfortran/intrinsics/reduce.c:283:35: error: passing argument 4 of 'reduce' from incompatible pointer type [-Wincompatible-pointer-types]
283 | reduce (&ret, array, operation, dim, mask, identity, ordered);
| ^~~
| |
| int *
/x/gcc/libgfortran/intrinsics/reduce.c:41:24: note: expected 'GFC_INTEGER_4 *' {aka 'long int *'} but argument is of type 'int *'
41 | GFC_INTEGER_4 *dim,
| ~~~~~~~~~~~~~~~^~~
make[3]: *** [Makefile:4678: intrinsics/reduce.lo] Error 1
libgfortran:
* intrinsics/reduce.c (reduce_scalar_c): Correct type of parameter DIM.
-rw-r--r-- | libgfortran/intrinsics/reduce.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libgfortran/intrinsics/reduce.c b/libgfortran/intrinsics/reduce.c index 63997d8..c8950e4 100644 --- a/libgfortran/intrinsics/reduce.c +++ b/libgfortran/intrinsics/reduce.c @@ -270,7 +270,7 @@ reduce_scalar_c (void *res, index_type res_strlen __attribute__ ((unused)), parray *array, void (*operation) (void *, void *, void *), - int *dim, + GFC_INTEGER_4 *dim, gfc_array_l4 *mask, void *identity, void *ordered, |