On 6/17/2014 3:27 AM, Jonathan M Davis via Digitalmars-d wrote:
I would hope that the compiler could and would optimize out setting the out
parameter to its init value when it's unnecessary

This is called "dead assignment elimination" and is a bog standard data flow analysis technique that has been in common use since the 1980's.

Compile some sample code and see!

Also:

    grep -r "dead assignment" *.c

in the compiler source tree.

BTW, data flow analysis was not pioneered by the Clang folks, despite them being very good compiler devs.

Reply via email to