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.

Reply via email to