Hi Erik,
ABCL appears to remove a function definition that it incorrectly thinks is unused. I've attached abcl-bug.lisp. Here is a transcript:
----
ABCL (fails)
VibhuMondrasMBP:Desktop vibhu$ abcl.sh
Armed Bear Common Lisp 1.3.1
Java 1.8.0_11 Oracle Corporation
Java HotSpot(TM) 64-Bit Server VM
Low-level initialization completed in 0.394 seconds.
Startup completed in 1.8 seconds.
Loading /Users/vibhu/.abclrc completed in 11.668 seconds.
Type ":help" for a list of available commands.
CL-USER(1): (load "abcl-bug")
; Note: deleting unused local function LABELS =G
T
CL-USER(2): (sample2 1)
#<THREAD "interpreter" {4F4C3489}>: Debugger invoked on condition of type UNDEFINED-FUNCTION
The function SAMPLE2 is undefined.
Restarts:
0: CONTINUE Try again.
1: USE-VALUE Specify a function to call instead.
2: RETURN-VALUE Return one or more values from the call to SAMPLE2.
3: TOP-LEVEL Return to top level.
[1] CL-USER(3):
----
CLISP (works)
VibhuMondrasMBP:Desktop vibhu$ clisp
;; Loading file /Users/vibhu/.clisprc ...
;; Loading file /Users/vibhu/quicklisp/setup.lisp ...
;; Loading file /Users/vibhu/quicklisp/ASDF.lisp ...
;; Loaded file /Users/vibhu/quicklisp/ASDF.lisp
;; Loaded file /Users/vibhu/quicklisp/setup.lisp
;; Loaded file /Users/vibhu/.clisprc
[1]> (load "abcl-bug")
;; Loading file /Users/vibhu/Desktop/abcl-bug.lisp ...
;; Loaded file /Users/vibhu/Desktop/abcl-bug.lisp
T
[2]> (bug)
1
[3]> (load "tco2")
;; Loading file /Users/vibhu/Desktop/tco2.lisp ...
;; Loaded file /Users/vibhu/Desktop/tco2.lisp
T
[4]> (sample2 1)
1
--
Bye,
Erik.
Robust and Flexible. No vendor lock-in.