[gnu.gcc.bug] __volatile

raeburn@ATHENA.MIT.EDU (Ken Raeburn) (04/30/89)

Although the announcement of gcc 1.35 says that "__volatile" is
available as a new keyword that is not affected by the -ansi or
-traditional options, I can't get it to work:

 [multics!raeburn:/mit/raeburn]
<1135 11:49am> % cat quux.c
/*
 * foo
 */

void foo (x) __volatile short *x; {
    short y;
    while (y= *x)
        ;
}
 [multics!raeburn:/mit/raeburn]
<1136 11:49am> % gcc -v -S quux.c
gcc version 1.35
 /mit/gnu/vaxlib/gcc-cpp -v -undef -D__GNUC__ -Dvax -Dunix -D__vax__ -D__unix__ quux.c /tmp/cc020572.cpp
GNU CPP version 1.35
 /mit/gnu/vaxlib/gcc-cc1 /tmp/cc020572.cpp -quiet -dumpbase quux.c -version -o quux.s
GNU C version 1.35 (vax) compiled by GNU C version 1.35.
quux.c:5: parse error before `__volatile'
quux.c:5: parse error before `{'
#NO_APP
gcc_compiled.:
.comm _x,4
Exit 1               gcc -v -S quux.c
 [multics!raeburn:/mit/raeburn]
<1137 11:49am> % 

(The documentation doesn't list "__volatile", though it does
explicitly list a number of others.)  This doesn't seem to be affected
by -ansi or -traditional.  (BTW, the combination of those two options
should probably be made to report an error.  It doesn't, currently.)

-- Ken