(j3.2006) more on J32031 equivalence of circular types
Bill Long
longb
Wed Aug 20 18:36:49 EDT 2008
Aleksandar Donev wrote:
> On Wednesday 20 August 2008 15:15, Bill Long wrote:
>
>> I guess I don't see what part of the answer is not obvious here. What
>> part of f03:4.5.1.3 is ambiguous in the case?
>>
>
> TYPE(T), POINTER :: NEXT => NULL()
>
> Does this component in type T in module FOO have the same type as that in
> module BAR?
The type of the component in type T in module FOO is obviously type T
defined in module FOO. So your question is whether type T in FOO is the
same type as type T in BAR.
> If you know the answer, you've already answered the question you
> are trying to answer.
Clearly, since it is just a restatement of the original question.
> You get into an infinite loop that you must terminate
> somehow.
>
I see no infinite loop. Pointer components with the same type as the
type being defined have been around for a long time. There is no loop
because the component is actually a descriptor, and not an object of the
parent type. At least that's why there is no loop as far as the
implementation is concerned.
Cheers,
Bill
> Aleks
>
--
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