Print

Print


If Compiler A is the one I think it is, I filed a bug with them in January, 2012 for this problem. The issue with them is still open. 

As John noted, Compiler B is correct.  They syntax rules that cover this are R908 and R909.

Cheers,
Bill


 
> On May 1, 2018, at 7:58 AM, Anton Shterenlikht <[log in to unmask]> wrote:
> 
> For coarrays of DT, components follow the image selector,
> as in X[...]%...
> 
> For array coarrays, the array section precedes the image
> selector, as in X(... : ... )[...].
> 
> What about coarray substrings?
> Does the substring spec appear
> before or after the image selector?
> Can somebody point me to the relevant place in DIS please.
> 
> If I put the substring before the image selector:
> 
> character( len=2 ) a[*]
> if ( this_image() .eq. 1 ) a(2:2)[2] = 'Z'
> a(1:1) = "X"
> end
> 
> compiler A accepts, compiler B rejects with:
> 
>  Unknown statement.  Expected assignment statement but found "[" instead of "=" or "=>".
> 
> If I put the other way round:
> 
> character( len=2 ) a[*]
> if ( this_image() .eq. 1 ) a[2](2:2) = 'Z'
> a(1:1) = "X"
> end
> 
> then compiler B accpepts, but A rejects with:
> 
> Syntax error, found '(' when expecting one of: => = . %
> 
> Thanks
> 
> Anton

Bill Long                                                                       [log in to unmask]
Principal Engineer, Fortran Technical Support &   voice:  651-605-9024
Bioinformatics Software Development                      fax:  651-605-9143
Cray Inc./ 2131 Lindau Lane/  Suite 1000/  Bloomington, MN  55425