On 1/24/2019 12:01 PM, kinke wrote:
`out` params are default-initialized on entry.
Ignoring backwards compatibility for a second, I think getting rid of that would
actually be beneficial (most args are probably already default-initialized by
the callee in the line above the call...)
The compiler should elide the default-initializations before the call (although
it currently does not).
The 'out' comes from IDL (Interface Definition Language) and by using out
parameters it is directly convertible to/from IDL.
Even earlier, 'out' comes from Ada (!)
From an efficiency standpoint, having the initialization occur in the function
is better than all that duplicated initialization code in all the callers.