aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog5
-rw-r--r--src/boot/ast.boot2
-rw-r--r--src/boot/strap/ast.clisp1
3 files changed, 8 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index a6e5f0a6..2cdd0ced 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-03 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * boot/ast.boot (bfSTEP): Synthetize artificial variable for
+ unnamed loop index.
+
2011-07-14 Gabriel Dos Reis <gdr@cs.tamu.edu>
* boot/ast.boot (bfIS1): Tidy test for cons cells.
diff --git a/src/boot/ast.boot b/src/boot/ast.boot
index 1af82d64..3cc190ae 100644
--- a/src/boot/ast.boot
+++ b/src/boot/ast.boot
@@ -267,6 +267,8 @@ bfForTree(OP,lhs,whole)==
bfSTEP(id,fst,step,lst)==
+ if id is "DOT" then
+ id := bfGenSymbol()
initvar := [id]
initval := [fst]
inc :=
diff --git a/src/boot/strap/ast.clisp b/src/boot/strap/ast.clisp
index 8a8a75d7..10dea59c 100644
--- a/src/boot/strap/ast.clisp
+++ b/src/boot/strap/ast.clisp
@@ -367,6 +367,7 @@
(PROG (|suc| |ex| |pred| |final| |g2| |inc| |g1| |initval| |initvar|)
(RETURN
(PROGN
+ (COND ((EQ |id| 'DOT) (SETQ |id| (|bfGenSymbol|))))
(SETQ |initvar| (LIST |id|))
(SETQ |initval| (LIST |fst|))
(SETQ |inc|