On Fri, 25 Jan 2019 18:14:56 -0800, Manu wrote: > Removing the `void` stuff end expanding such that the declaration + > initialisation is at the appropriate moments; any function can throw > normally, and the unwind works naturally?
The contention was that, if the arguments are constructed properly, ownership is given to the called function, which is responsible for calling destructors. But if the argument construction fails, the caller is responsible for calling destructors. I'm not sure what the point of that was. The called function doesn't own its parameters and shouldn't ever call destructors. So now I'm confused.
