The function my_swap is an attemp to get my 2xmove + 1xequal, but to no avail. Why can't the last std::move in line 13 use the move-constructor? "tmp" is non-const and clearly not used afterwards...
Or is it just that the compiler is not good enough yet?
Does anyone has a GCC4.3+ at hand? (The one I have here is too old :-( )
Actually, it's even stranger. I guess I don't understand rvalue references at all. I have to read everything carefully again... so please people, go on.. there is nothing to see... ;-)