Comment by masklinn
That is static though, that `foo` takes its parameter by `const&` and will thus not move it is available to the compiler (or other tooling) at compile time.
The point of contention is whether that is always the case, or whether there are situations where moving from the parameter is a runtime decision.
Others have already answered that for you. I specifically said it’s non local which means it’s difficult for a human to reason about at the call site.