From owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org  Thu Mar 15 14:26:44 2012
Return-Path: <owner-sc22wg5+sc22wg5-dom8=www.open-std.org@open-std.org>
X-Original-To: sc22wg5-dom8
Delivered-To: sc22wg5-dom8@www.open-std.org
Received: by www.open-std.org (Postfix, from userid 521)
	id B68B09DB118; Thu, 15 Mar 2012 14:26:44 +0100 (CET)
Delivered-To: sc22wg5@open-std.org
Received: from mailrelay2.lrz-muenchen.de (mailrelay2.lrz-muenchen.de [129.187.254.102])
	by www.open-std.org (Postfix) with ESMTP id 40ADD9DB112
	for <sc22wg5@open-std.org>; Thu, 15 Mar 2012 14:26:42 +0100 (CET)
Received: from postout2.mail.lrz.de ([10.156.6.19] [10.156.6.19]) by mailrelay2.lrz-muenchen.de with ESMTP; Thu, 15 Mar 2012 14:26:39 +0100
Received: from [IPv6:2001:4ca0:0:f000:862b:2bff:fe99:37d9] (unknown [IPv6:2001:4ca0:0:f000:862b:2bff:fe99:37d9])
	(using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits))
	(No client certificate requested)
	by postout2.mail.lrz.de (Postfix) with ESMTPS id 49534ABE4F;
	Thu, 15 Mar 2012 14:26:39 +0100 (CET)
Message-Id: <4F61EE0F.4000502@lrz.de>
Date: Thu, 15 Mar 2012 14:26:39 +0100
From: Reinhold Bader <Reinhold.Bader@lrz.de>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; de; rv:1.9.2.24) Gecko/20111101 SUSE/3.1.16 Thunderbird/3.1.16
MIME-Version: 1.0
To: "Bader, Reinhold" <Reinhold.Bader@lrz.de>
CC: WG5 <sc22wg5@open-std.org>,
    "Rolf Rabenseifner (rabenseifner@hlrs.de)" <rabenseifner@hlrs.de>
Subject: Re: (SC22WG5.4646) AW: Vote on N1904
References: <20120312152923.857DB9DB112@www.open-std.org> <20120314164259.A5DD4356A46@www.open-std.org> <20120314215009.D830F9DB112@www.open-std.org>
In-Reply-To: <20120314215009.D830F9DB112@www.open-std.org>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

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

