(j3.2006) (SC22WG5.3762) Response on the TR29113 draft N1761

Aleksandar Donev donev1
Mon Dec 8 13:25:07 EST 2008

On Monday 08 December 2008 09:15, Bill Long wrote:
>  Issue 6 - referencing or defining assumed rank entities:
> ? ? ? ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ? ? ?We need some rules to deal with this.
> There are rules currently - basically that the only thing allowed on
> the Fortran side is to pass an assumed-rank dummy as an actual
> argument to another procedure. Are you saying that the scope of the
> TR needs to be expanded to specify ways for things like this to be
> used in Fortran?
Reinhold suggested a SELECT RANK construct. It does seem reasonable and 
not hard for either vendors or the standard, and it is safe to use.

However, note that for TYPE(*) it is hard to do anything, since there is 
no type descriptor passed like for CLASS(*) [so no TYPE SELECT for such 
arguments]. So what do you do with a "TYPE(*), DIMENSION(..)" argument 
inside a SELECT RANK? It will have a rank but not a declared type. Can 
the standard even be parsed to figure out what one can do with such a 
thing? We wanted to play it safe for now and simply say nothing is 
allowed, except calls to certain intrinsics.

But, again, Reinhold's suggestion seems OK to me if it is deemed useful.


Aleksandar Donev, Ph.D.
Lawrence Postdoctoral Fellow @ Lawrence Livermore National Laboratory
High Performance Computational Materials Science and Chemistry
E-mail: donev1 at llnl.gov
Phone: (925) 424-6816  Fax: (925) 423-0785
Address: P.O.Box 808, L-367, Livermore, CA 94551-9900
Web: http://cherrypit.princeton.edu/donev

More information about the J3 mailing list