ambiguous ?

Jim Giles jlg at lanl.gov
Thu Oct 26 08:31:08 AEST 1989


>From article <6675 at ficc.uu.net>, by peter at ficc.uu.net (Peter da Silva):
> In article <14114 at lanl.gov> jlg at lanl.gov (Jim Giles) writes:
>> [... comments about the continuing lack of an approved C standard ...]
> Compare it to X3J3.

I dare not!  I've been accused (incorrectly) of hold C up to scrutiny
only vs. Fortran.  This, is another case in which someone else just
assumes that I will be defensive about Fortran.

But, what the hell - since you mention it.  X3J3 _has_ successfully
passed 2 previous standards.  The present revision has only gone to
two public reviews so far.  X3J11 has gone to 3 public reviews and
now faces a class action suit - they still haven't passed even one
standard!

> [... Examples like X = 0 * FUNC(Y) ...]
> You say that X3J11 is the only standard which allowed ambiguous constructs.
> Looks like that statement is inoperative.

Not at all.  The Fortran standard refers to the above behaviour as
"implementation defined".  This means that the implementation _should_
define the meaning of the expression.  Most implementations choose to
let the optimizer have free rein (and therefore, the _implementation_
is responsible for the ambiguity).  In my opinion, this doesn't meet
the requirements of standard conformance since the implementation
_should_ define the semantic meaning of the construct.

However, X3J11 will be the only ANSI language standard which _specifically_
_doesn't_ require an implementation to provide a definition of some
behaviours in order to be considered comforming.  Therefore, the ambiguity
is specifically allowed by the proposed standard.



More information about the Comp.lang.c mailing list