[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
re: Segmentation Error using SI:FASLINK
I wrote the following lisp program:
(defun fact (i) (cond ((< i 1) 1) (t (* i (fact (- i 1)))))))
When I load it into kcl it works fine:
% kcl
AKCL (Austin Kyoto Common Lisp) Version(1.257) Tue Jan 2 16:03:23 EST 1990
Contains Enhancements by W. Schelter
Changes in version 1-225 definitely require recompilation of user files.
>(load "fact.lsp")
Loading fact.lsp
Finished loading fact.lsp
T
>(fact 1)
1
>(fact 2)
2
>(fact 3)
6
It also compiles ok:
>(compile-file "fact.lsp")
Compiling fact.lsp.
End of Pass 1.
End of Pass 2.
OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3
Finished compiling fact.lsp.
#"fact.o"
Furthermore, when loaded it runs ok:
>(load "fact.o")
Loading fact.o
Finished loading fact.o
604
>(fact 2)
2
>(fact 3)
6
>
However, it will not load with faslink:
>(si:faslink "fact.o" "")
Segmentation violation: c stack ok:signalling error
Error: Caught fatal error [memory may be damaged]
Error signalled by SYSTEM:FASLINK.
Broken at EVAL. Type :H for Help.
>>
Is this an error in kcl or am I making a mistake?
Thanks for the help.