Because I'm not an ASDF developer and know little of it, I was hoping for a test case that involved primarily ACL, or someone to finger what in ACL (or ASDF) is causing the problem. Sorry I wasn't more clear.
Here's a reduced test case.
(load (compile-file "al10bug.lisp"))
;;; al10bug.lisp (defparameter *result* nil)
(defun two-optionals (&optional (o1 :default1) (o2 :default2)) (format t "TWO-OPTIONALS ~S ~S~%" o1 o2) (setf *result* (if (equal o1 :parameter) :success :failure)) #'(lambda (x) o2))
(trace two-optionals)
(two-optionals :parameter)
(format t "TEST ~A~%" *result*)
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org When communists say "to each man according to his needs", remember they established just how low these needs are, by founding concentration camps.