(j3.2006) request for interpretation
Bill Long
longb
Wed Apr 2 19:38:59 EDT 2008
Aleksandar Donev wrote:
> On Wednesday 02 April 2008 12:33, Bill Long wrote:
>
>> rules that require distinguishable specifics have been converted into
>> Constraints. Thus, while some lax compliers can argue conformance now,
>> the new standard will require that they diagnose the error in the
>> example code you posted.
>>
> Bill, did you read Kurt's post? The essential point he made is that those
> rules specifically do not apply to specifics that come in through a generic
> identifier via host association. What are you citing as a counter-argument?
> Best,
> Aleks
>
>
I guess I'm not seeing a conflict here.
The first part of 12.4.4, items (1)(a)..(1)(d) explain how you get the
list of specifics for a generic.
16.2.3 explains the rules that constrain that list based on argument
differences.
12.4.4.1 is effectively six steps you go through to determine which
specific is referenced by a particular reference using the generic name.
It is focused on differences based on characteristics among the specific
interfaces that are orthogonal to the ones in 16.2.3, such as whether it
is elemental or not. In particular,
1) Look at non-elemental specifics from the local scoping unit or USE
associated.
2) Look at elemental specifics from the local scoping unit or USE
associated.
3) Look at INTRINSIC specifics from the local scoping unit or USE
associated.
4) Same as 1 for host associated.
5) Same as 2 for host associated.
6) Same as 3 for host associated.
Suppose you have a set of subroutines that have one argument, and they
are specifics in a generic interface. One could have a rank 2 dummy and
the other a scalar argument, but be elemental. The arguments are TKR
distinguishable because of the rank difference. If you have an actual
reference with a rank 2 actual argument, the 6-step plan tells you which
one to pick. For example, if the specific with the rank 2 dummy came
from host association, and the elemental one is local, the 6-step rules
seem to say you pick the elemental one. It would seem simpler to me to
have merged all the access methods together and have just the three
steps. but there must have been some issue at the time that favored this
order. Maybe they did not anticipate vendors constructing the
interfaces fully before doing the searches, but rather iterating through
local first and then going to host. Whatever the reason, that's the
order specified.
However, the basic point remains that the search order in 12.4.4.1 in no
way relieves the user from conforming to the rules in 16.2.3.
Cheers,
Bill
--
Bill Long longb at cray.com
Fortran Technical Support & voice: 651-605-9024
Bioinformatics Software Development fax: 651-605-9142
Cray Inc., 1340 Mendota Heights Rd., Mendota Heights, MN, 55120
More information about the J3
mailing list