<html><body>
<p><tt>j3-bounces@j3-fortran.org wrote on 09/23/2008 10:48:38 PM:<br>
<br>
&gt; This means we should prohibit<br>
&gt; <br>
&gt; &nbsp; class(my_type), intent(in) :: x[*]<br>
&gt; &nbsp; select type ( x )<br>
&gt; &nbsp; type is ( my_extension )<br>
&gt; &nbsp; &nbsp; print *, x[1]%extra_stuff<br>
&gt; &nbsp; end select<br>
&gt; <br>
&gt; because the dynamic type of X might be different from the type of <br>
&gt; X[1]. &nbsp;Or... we should prohibit SOURCE= and MOLD= for coarray allocations.<br>
</tt><br>
<tt>Hmm..., I don't even understand what this code fragment means: the associate name, x, in the select type construct is revering to a local variable, and it says if it is my_extension, then refers to extra_stuff on image 1? &nbsp;I think we should prohibit coindexed objects with base-object being associate name.</tt><br>
<br>
<br>
<br>
<tt>&gt; The problem is that without being able to reference coindexed <br>
&gt; polymorphic objects, e.g. as<br>
&gt; <br>
&gt; &nbsp; select type ( x=&gt;x[1] )<br>
&gt; &nbsp; type is ( my_extension )<br>
&gt; &nbsp; &nbsp; print *, x%extra_stuff<br>
&gt; &nbsp; end select<br>
&gt; <br>
&gt; and without SELECT TYPE as above, the only components that can be <br>
&gt; accessed are those of the declared type. &nbsp;So we might as well <br>
&gt; prohibit declaring polymorphic coarrays.<br>
<br>
</tt><br>
<tt>The restriction probably is not needed. &nbsp;You can achieve the same effect using coarray dummy arguments, which normally is more efficient than using coindexed objects. &nbsp;On the other hand, I have no objection to disallow polymorphic coarrays:-)</tt><br>
<br>
<tt>Cheers,</tt><br>
<br>
<br>
Jim Xia<br>
<br>
RL Fortran Compiler Test<br>
IBM Toronto Lab at 8200 Warden Ave, Markham, On, L6G 1C7<br>
Phone (905) 413-3444  Tie-line 313-3444<br>
email: jimxia@ca.ibm.com<br>
D2/YF7/8200 /MKM<br>
</body></html>