This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Volatile MEMs in statement expressions and functions inlined as trees
- From: Linus Torvalds <torvalds at transmeta dot com>
- To: Gabriel Dos Reis <gdr at codesourcery dot com>
- Cc: Alexandre Oliva <aoliva at redhat dot com>, Richard Henderson <rth at redhat dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 14 Dec 2001 12:37:22 -0800 (PST)
- Subject: Re: Volatile MEMs in statement expressions and functions inlined as trees
On 14 Dec 2001, Gabriel Dos Reis wrote:
> Linus Torvalds <torvalds@transmeta.com> writes:
>
> [...]
>
> | So when the C++ standard says
> |
> | The result has the type of the left side.
> | The result has the value of the value stored.
> | The result is an lvalue.
> |
> | these are not mutually incompatible. In particular, that middle part is
> | _not_ overridden (or made invalid) by the last part.
>
> Certainly, since the lvalue has a value which is the value stored.
Bzzt, you lose.
Not with volatile memory.
Re-loading the value from memory is _not_ the same as "value stored".
Linus