Volatile MEMs in statement expressions and functions inlined as trees

Gabriel Dos Reis gdr@codesourcery.com
Sat Dec 15 15:31:00 GMT 2001


Linus Torvalds <torvalds@transmeta.com> writes:

[...]

| And I did _not_ make up any rules.

You did equate lvalueness and addressability, and that is bogus.

| > | If you override the assignment operator, then the rules of assignment are
| > | defined by _you_, not by the C++ standard.
| >
| > The implicitly generated copy and assignment operator is defined by
| > the C++ standard.  Again consider:
| >
| > 	struct X { };
| 
| You showed this example once before, and I didn't even bother to reply to
| it, because you clearly do not even understand what "volatile" means.

No, you're on the wrong page.  That specific example is given in a
specific context to disprove a specific (bogus) claim you made.  And
if you back and re-read the specific part I was replying to, you'll
notice that you're confusing things.

| There are no implicit volatile assignment operators, because there are no
| volatile classes.

That is nonsense.  

There is no implicitly generated copy and assignment operator taking a
volatile reference nto because there is no "volatile class" (sic), but
because 12.8/10 defines the precise rules.  Go and check out.

| Every SINGLE one of your arguments has been totally bogus.

That, obviously, is untrue.  No need to say more.

-- Gaby
CodeSourcery, LLC                       http://www.codesourcery.com



More information about the Gcc-patches mailing list