how to cast away 'volatile'?

Ian Lance Taylor
Tue Mar 13 16:25:00 GMT 2007

Andrew Haley <> writes:

> Ian Lance Taylor writes:
>  > 
>  > All objects shared between threads need to protected by a mutex, or by
>  > some other type of memory barrier.
> It's an interesting contention -- that in GNU/Linux userspace there
> are essentially no legitimate uses for volatile.  Hmmmm...

There is one legitimate use: the C standard blesses the specific case
of "volatile sig_atomic_t".  A signal handler can reliably access a
variable of that type.

I don't think there is any other reason to use volatile in userspace.
It simply does not mean what it seems to mean.


More information about the Gcc-help mailing list