(j3.2006) (SC22WG5.3591) Assumed-type and Assumed-rank extensions for C Interop TR.

Malcolm Cohen malcolm
Fri Jul 25 05:17:00 EDT 2008


Van Snyder wrote:
> I have submitted an interp request whether size(lbound(A)) is an
> initialization expression
> if A is an assumed-shape array and the lower bound either does not
> appear or is an initialization expression.  See 08-200r1.
>   
SIZE is a red herring - LBOUND(A) is an init expr unless it has a bound 
specified by a non-init expr.
> One of the proposed answers is "Yes, no edits required."
>   
I certainly hope we're not going to insert extra verbiage into the 
standard!  The last sentence of 5.1.2.5.2
   "The lower bound is <lower-bound> if present, and 1 otherwise."
excludes any possibility of "assuming" the lower bounds, since they are 
being specified to have specific values.

If a vendor cannot work out that "assumed-shape" does not mean "assumed 
*bounds*", they have lots more worse problems than arguing about whether 
something is an init expr!  We expect a few new users to get confused 
about just what gets assumed when you omit the lower bound expr, since 
they don't read the standard, but not vendors: this sentence is 
perfectly clear.

As for "Processors disagree", I'd put it as "Processors have bugs".

Cheers,
-- 
........................Malcolm.





More information about the J3 mailing list