Open Mercerenies opened 2 years ago
Deferring to 2.x and heavily leaning toward just declaring this behavior undefined and making it more clear where the sequence points are. Will leave the issue open for now to think about it, but not a 1.x priority.
I suspect this isn't unique to
let
but applies to several forms of control flow.Assuming the functions
foo
,bar
, andbaz
exist, this compiles to roughlyNotably, although it looks intuitively like
foo
, thenbar
, thenbaz
will be run in the Lisp code, the actual order of evaluation isbar
, thenfoo
, thenbaz
.Do we care? Or do we consider the order of evaluation of values in a single expression undefined?