(j3.2006) (SC22WG5.4652) AW: Vote on N1904
Reinhold Bader
Reinhold.Bader
Thu Mar 15 09:26:39 EDT 2012
I managed to check the latest draft of the new Fortran MPI-3 interface today -
receive buffers are not specified with any INTENT.
INTENT(OUT) is specified for some other arguments in MPI-3 calls, like MPI
request handles or the error argument, but all these cases do not use
TYPE(*).
Regards
Reinhold
Am 14.03.2012 22:49, schrieb Bader, Reinhold:
> [...]
>> Note that the proposals to simply forbid INTENT(OUT) together with
>> assumed-type exclude reasonable uses of INTENT(OUT) (e.g. for MPI
>> receive buffers), but some constraint along those lines seems the best
>> solution.
>
> The MPI-3 draft for the new Fortran bindings contains some remarks
> concerning INTENT(OUT) for receive buffers which - if I remember
> correctly - can be interpreted along the following lines
>
> * don't take the Fortran semantics of the MPI spec too seriously as an implementor -
> you're allowed to specify INTENT(INOUT) here [and would be required to
> if you use TYPE(*) and the above restriction is implemented in the TS]
> * programmer, please don't rely on other things than the buffer elements
> written by your send NOT becoming undefined
>
> Rolf may be able to shed more light on this, so am putting him on CC here.
> In any case, it is not the purpose of MPI-3 to enable communication of
> data of types described below, so while I'm not convinced that loosening
> of the planned INTENT(OUT) prohibition is necessary, the below would
> certainly not impact MPI-3.
>
>> The following is badly worded and may not be enough, but is
>> put forward as a possibility:
>> "If the actual argument corresponding to an assumed-type dummy argument
>> is of a type with default-initialized components, or of a type that has
>> has components that have the ALLOCATABLE or POINTER attributes, or are
>> of types with default-initialized components, the assumed-type entity
>> shall not have the INTENT(OUT) attribute."
>>
> Regards
> Reinhold
--
Dr. Reinhold Bader
Leibniz Supercomputing Centre (http://www.lrz.de) / HPC Support
Tel. +49 89 35831 8825 - Fax +49 89 35831 8625
More information about the J3
mailing list