
On 23/05/2010 14:38, Neil Groves wrote:
So am I correct in stating that the move emulation is therefore fundamentally relying upon undefined behaviour with no performant alternative that uses the same interface?
It seems so, but I'm not sure. We'll need to confirm this with a language expert. If the problem is GCC, we can workaround it. Hopefully move emulation works nearly for all compilers and in the future all of them will have rvalus references, so I don't think we have a big issue here.
Is the impact of this issue such that to be compliant we would need to use a move_sink like the adobe design? I imagine this would make substitution with proper rvalue references more difficult.
Yes, it will make it quite difficult. I think we can solve GCC issues, (either if it's undefined behaviour or not), more now that GCC offers rvalue references. I hope -std=c++0x will be activated by default soon. Best, Ion