Determine if the call of f, or function type or delegate type t1, has any side effects.
Build a temporary variable to copy the value of e into.
The result of this expression will be discarded. Complain if the operation has no side effects (and hence is meaningless).
Build a temporary variable to extract e's evaluation, if e is not trivial.
Determine if Expression has any side effects.
Front-end expression rewriting should create temporary variables for non trivial sub-expressions in order to: 1. save evaluation order 2. prevent sharing of sub-expression in AST
See Source File
$(DMDSRC _sideeffect.d)
Copyright (c) 1999-2016 by Digital Mars, All Rights Reserved
Compiler implementation of the D programming language.