[comp.lang.c] parens and optimizing

rbbb@rice.EDU (David Chase) (08/22/87)

> Compiler writers and vendors, please speak up on this issue, preferably
> directly to an X3J11 committee member.  Don't let your ability to supply
> optimizing compilers be abrogated.

I'll say it again, plainly.  "Respecting parentheses" does not inhibit
optimization, because in a REAL compiler for a language with a REAL
specification, they are often ignored.  The C standard should tell me how
to tell what a C program "means", and I will guarantee that the output of
the optimizer has the same meaning.

The problem comes from the flaky specification of integers and exceptions,
and the (as far as I can hearsay) vague descriptions of "volatile"
storage.  IF "INTEGERS" ARE ALGEBRAIC THEN THERE WILL BE LOTS MORE
(correct) OPTIMIZATION.  If there "might be" exceptions, then there will
be less.  If you "leave it up to the compiler writer" then we all take a
giant step backwards to the days of "better run this one unoptimized;
never can tell what that optimizer will do to a program".

The X3J11 committee should come up with a LANGUAGE specification, not a
COMPILER specification.  I realize that we have all become accustomed to
language definition by compiler, but it's time to take that big step into
the 70s.

David