It'd be a problem if the function returned BigObject&&, but since it returns BigObject the move happens inside the function body which should be fine (modulo the issues raised in the article).
> Note: We should not use this way in the real development, because it is a reference to a local object. Here just show how to make RVO happened.