Just a quick one this time: FoldConstants#leaveIfNode() and FoldConstants#leaveTernaryNode() need to guard against ArrayLiteralNode: jjs> (function(){if([a]);})() Expected: throws ReferenceError Actual: no error jjs> [a] ? 1 : 2 Expected: throws ReferenceError Actual: no error - André