scope
name for temporary variable
a new side effect part will be appended to it.
original expression
if true, build new temporary variable even if e is trivial.
When e is trivial and alwaysCopy == false, e itself is returned. Otherwise, a new VarExp is returned. Note: e's lvalue-ness will be handled well by STC.ref_ or STC.rvalue.
Build a temporary variable to extract e's evaluation, if e is not trivial.