ref: 81641a224004107240a3c7bb4e24b66bf92afb73
parent: 672558d30fdfffa9f3ede3c7b671d28285407437
author: JeffBezanson <jeff.bezanson@gmail.com>
date: Tue Apr 14 20:30:24 EDT 2009
fixing glaring bug in last revision
--- a/femtolisp/flisp.c
+++ b/femtolisp/flisp.c
@@ -1563,6 +1563,7 @@
Stack[bp+i+1] = Stack[bp+nargs];
Stack[bp+i+2] = Stack[bp+nargs+1];
Stack[bp+i+3] = Stack[bp+nargs+2];
+ pvals = &Stack[bp+nargs+2];
}
else {
PUSH(NIL);
@@ -1570,6 +1571,7 @@
Stack[SP-2] = Stack[SP-3];
Stack[SP-3] = Stack[SP-4];
Stack[SP-4] = NIL;
+ pvals = &Stack[SP-1];
}
nargs = i+1;
break;
--- a/femtolisp/system.lsp
+++ b/femtolisp/system.lsp
@@ -643,7 +643,8 @@
(define (expand x) (macroexpand x))
-(define (load-process x) (eval (expand x)))
+(if (not (bound? 'load-process))
+ (define (load-process x) (eval (expand x))))
(define (load filename)
(let ((F (file filename :read)))