how to cast away 'volatile'?

Ian Lance Taylor iant@google.com
Tue Mar 13 16:25:00 GMT 2007


Andrew Haley <aph@redhat.com> 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.

Ian



More information about the Gcc-help mailing list