aboutsummaryrefslogtreecommitdiff
path: root/src/interp/g-util.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp/g-util.boot')
-rw-r--r--src/interp/g-util.boot5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot
index f4f8ba00..437c0427 100644
--- a/src/interp/g-util.boot
+++ b/src/interp/g-util.boot
@@ -82,11 +82,12 @@ splitAssignments u == main(u,nil) where
++ (if at all) before any call to simplifyVMForm.
spliceSeqArgs l ==
atomic? l => l
- l is [['%seq,:stmts],:.] =>
+ s := first l
+ s is ['%seq,:.] =>
+ stmts := spliceSeqArgs s.args
stmts = nil => spliceSeqArgs rest l
lastNode(stmts).rest := spliceSeqArgs rest l
stmts
- s := first l
s is ['%LET,x,y] and (stmts := splitAssignments y) =>
lastNode(stmts).rest := [['%LET,x,second y],:spliceSeqArgs rest l]
stmts