Intel® oneAPI HPC Toolkit
Get help with building, analyzing, optimizing, and scaling high-performance computing (HPC) applications.
Announcements
The Intel sign-in experience is changing in February to support enhanced security controls. If you sign in, click here for more information.
1990 Discussions

Intel MPI's mpif.h not standard-conforming

Harald1
Novice
225 Views

Hello,

when including Intel's mpif.h and enabling strict standard conformance checks, this fails to compile:

implicit none
include "/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h"
end

This gives:

% ifort test.f90 -e03
/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h(82): error #7346: The CHARACTER* form of a CHARACTER declaration is an obsolescent feature in Fortran 2003.
       CHARACTER*1 MPI_ARGVS_NULL(1,1)
-----------------^
/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h(83): error #7346: The CHARACTER* form of a CHARACTER declaration is an obsolescent feature in Fortran 2003.
       CHARACTER*1 MPI_ARGV_NULL(1)
-----------------^
/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h(594): error #6916: Fortran 2003 does not allow this length specification.   [8]
       integer*8 MPI_DISPLACEMENT_CURRENT
---------------^
/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h(612): error #6916: Fortran 2003 does not allow this length specification.   [8]
       REAL*8 MPI_WTIME, MPI_WTICK
------------^
/opt/intel/oneapi/mpi/2021.7.1/include/mpif.h(613): error #6916: Fortran 2003 does not allow this length specification.   [8]
       REAL*8 PMPI_WTIME, PMPI_WTICK
------------^
compilation aborted for test.f90 (code 1)

There are standard-conforming ways for the affected declarations, see e.g. OpenMPI's include files or the MPI 3.1 reference documents.

It would be great if this could be addressed so that legacy code that still relies on mpif.h can be compiled with strict checks.

Thanks,

Harald

 

0 Kudos
1 Reply
Barbara_P_Intel
Moderator
211 Views

MPI support is via the HPC Toolkit Forum. Moving this there.

 

Reply