[comp.lang.c] Time to compromise?

friedl@vsi.UUCP (Stephen J. Friedl) (04/02/88)

In article <311@aiva.ed.ac.uk>, richard@aiva.ed.ac.uk (Richard Tobin) writes:
> [ talking here about #pragma volatile(foo) ]
> It's true that any particular instance of the use of such constructs
> isn't portable, but the concept behind it is.  That is, of course code that
> manipulates a memory-mapped device register (or similar) won't run on
> different machines, but that doesn't mean that it's unreasonable to have
> a standard way of expressing that a location is such a register.
> 
> Furthermore, #pragma isn't even portable between different compilers on
> the same machine, whereas something like "volatile" is.  And it's 
> increasingly common to have more than one C compiler available.

     There has been incredible volume of widely varying opinion
in this newsgroup about /noalias/, which many consider BY ITSELF
to be an evil thing.  On the other hand, the only objections to
/volatile/ I have seen have been "Yes, it is handy but so tied to
nonportable code that it is not worth making a change to C to
handle it."

     X3J11 has the unenviable task of striking a balance between:

        (A) hands off except for matter-of-life-or-death changes
 and
        (B) let's turn C into ADA.

     I generally tend to the (A) side of the fence, but if a
significant and diverse body of really smart people come up with
compelling technical reasons for a feature that doesn't break
existing code, I listen.  If my only countering argument is a
general "KYFHO" then perhaps it is time to compromise on this
one.

     Steve

P.S. - Give it up, Henry  :^)

-- 
Steve Friedl           V-Systems, Inc.            *Hi Mom*
friedl@vsi.com {uunet,ihnp4}!vsi.com!friedl attmail!friedl