On Monday, 26 September 2016 at 16:28:18 UTC, ag0aep6g wrote: > Inside `top`, `a` is an lvalue. It wouldn't be correct to move > `a` just because it originated from an rvalue. AFAICT, `top` can be moved in the call to `sub` if it's not used not returned below the call, right?