Hi, Here I'm attaching a patch that fixes this issue, adapting to the new gcc-14, for your consideration. I got a successful build in Ubuntu at [1].
Thanks in advance, Miriam [1] https://launchpad.net/~mirespace/+archive/ubuntu/plusone/+sourcepub/16299869/+listing-archive-extra -- [image: Canonical-20th-anniversary] Miriam España Acebal Software Engineer II - Ubuntu Public Cloud/Server Email: miriam.esp...@canonical.com Location: Spain (GMT+2) canonical.com ubuntu.com
Description: Fix int-conversion error in GCC-14 GCC no longer treats integer types and pointer types as equivalent in assignments (including implied assignments of function arguments and return values), and instead fails the compilation with a type error. The MPI_Comm_f2c function from MPICH receives a MPI_Fint comm, but here this was done in an implicit way with the accesed value. This patch casts it to the recommended standard types intptr_t. Author: Miriam España Acebal <miriam.esp...@canonical.com> Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1074955 Forwarded: yes Last-Update: 2024-08-01 --- Index: b/mpi/fftw_f77_mpi.h =================================================================== --- a/mpi/fftw_f77_mpi.h +++ b/mpi/fftw_f77_mpi.h @@ -47,7 +47,7 @@ */ #if defined(HAVE_MPI_COMM_F2C) -# define FFTW_MPI_COMM_F2C(comm) MPI_Comm_f2c(*((MPI_Comm *) comm)) +# define FFTW_MPI_COMM_F2C(comm) MPI_Comm_f2c((intptr_t) *((MPI_Comm *) comm)) #elif defined(FFTW_USE_F77_MPI_COMM) # define FFTW_MPI_COMM_F2C(comm) (* ((MPI_Comm *) comm)) #elif defined(FFTW_USE_F77_MPI_COMM_P)