Description
Problem
We do not prohibit the modification of Fortran INTEGER
using compiler options.
I would like someone to explain to me how they think this should be implemented.
My contention is this is almost impossible to implement, and we should disallow it.
This program illustrates the problem. How do people think implementers can make it so that the output of this program depends on the compiler option used?
program main
use mpi_f08
implicit none
integer :: size,ierr
call MPI_Init(ierr)
call MPI_Type_size(MPI_INTEGER,size,ierr)
print*,size
call MPI_Finalize(ierr)
end program main
To be clear, I know how to implement this, but it's tricky and requires Fortran 2003, which isn't something we assume with mpif.h
or the MPI
module.
Proposal
We should disallow modification of the size Fortran INTEGER
in the MPI standard.
Changes to the Text
Impact on Implementations
Intel MPI has at least partial support for ILP64 in the MPI
module (but not the MPI_F08
module). This would disallow that.
Impact on Users
Users like this feature but do not understand its implications. It has never been safe to use.
References and Pull Requests
Metadata
Metadata
Assignees
Type
Projects
Status