- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
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
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
MPI support is via the HPC Toolkit Forum. Moving this there.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page