aboutsummaryrefslogtreecommitdiff
path: root/src/boot/strap/ast.clisp
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot/strap/ast.clisp')
-rw-r--r--src/boot/strap/ast.clisp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/boot/strap/ast.clisp b/src/boot/strap/ast.clisp
index 7f7e52ce..f9a2ecec 100644
--- a/src/boot/strap/ast.clisp
+++ b/src/boot/strap/ast.clisp
@@ -931,7 +931,7 @@
(COND
((NULL (CADDR |x|)) (LIST 'CONS (CADR |x|) |a|))
(T (SETQ |y| (|bfISReverse| (CADDR |x|) NIL))
- (RPLACA (CDDR |y|) (LIST 'CONS (CADR |x|) |a|)) |y|)))
+ (RPLACA (CDR (CDR |y|)) (LIST 'CONS (CADR |x|) |a|)) |y|)))
(T (|bpSpecificErrorHere| "Error in bfISReverse") (|bpTrap|))))))
(DEFUN |bfIS1| (|lhs| |rhs|)
@@ -1662,6 +1662,8 @@
(|y| (COND
((INTEGERP |y|)
(LIST 'SETF (LIST 'ELT |var| |y|) |expr|))
+ ((EQ |y| 'CAR) (LIST 'RPLACA |var| |expr|))
+ ((EQ |y| 'CDR) (LIST 'RPLACD |var| |expr|))
(T (LIST 'SETF (LIST |y| |var|) |expr|))))
(T (LIST 'SETF (LIST 'ELT |var| |sel|) |expr|)))))))