(j3.2006) (SC22WG5.5101) [ukfortran] WG5 letter ballot 7 on Fortran 2008 interpretations

Malcolm Cohen malcolm
Sun Oct 20 22:19:29 EDT 2013


Nick Maclaren writes:

>F08/0093
>
>My vote is "no" solely because this seems to assume the POSIX view of
>error status without specifying it.  For example, VMS (which is still
>twitching) uses a different conventions, and zOS is also slightly
>different.  Prepending some description like this to NOTE 2.6a would
>change my vote:
>
>    In the recommendations for a program exit status, it is
>    assumed that it is an integer with zero indicating success;
>    processors that use other conventions should interpret the
>    recommendations accordingly.

This is already assumed by the current text specifying a zero return value for 
plain STOP, i.e. although in principle I agree that the status return values 
could be better-specified, this interp is really only about the inconsistent way 
we went about it.

>F08/0096
>
>My vote is "no" solely because this makes a statement about C that
>cannot be unambiguously deduced from normative text in the C standard,

Presumably "C does not have arrays that are passed by value".  Since the 
normative text in the C standard turns array dummies into pointers (and I don't 
care which translation phase or whatever it happens in), I see nothing 
controversial about this very straightforward response.

The C standard actually says:
  "A parameter declared to have array or function type is adjusted to have a 
pointer type as described in 6.9.1.",
which further redirects to 6.7.5.3, which says
  "A declaration of a parameter as ??array of type?? shall be adjusted to 
??qualified pointer to type??, where the type qualifiers (if any) are those 
specified within the [ and ] of the array type derivation.".

I don't see any deduction needed to understand that array arguments are 
pointers!

On the face of it, "C does not have arrays that are passed by value" is 
falsifiable via counter-example, so if Nick disputes that then let's see a 
counter-example.  With no counter-example, an argument that the words don't mean 
that arrays are passed as a pointer to the first element (as described) is 
unconvincing.

Cheers,
-- 
................................Malcolm Cohen, Nihon NAG, Tokyo. 




More information about the J3 mailing list