logoalt Hacker News

locknitpickertoday at 1:36 PM0 repliesview on HN

> What is that makes NVRO so much more difficult to implement?

I recall reading that at a high level RVO is implemented by treating the return value as an external object. In simple terms (simplistic terms) RVO then works by

- first instantiating the return variable,

- passing the var by reference to the function,

- and then use return value to actually initialize the variable passed by reference.

The moment there's some funny logic on what to write to that output value, the problem gets far more complex.