The copy-initialization of the result of the call is sequenced before the
destruction of temporaries at the end of the full-expression established
by the operand of the
return statement, which, in turn, is sequenced
before the destruction of local variables (
[stmt.jump]) of the block
enclosing the
return statement
.