X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fdebug-int.lisp;h=9b973c070b66b488b745e06c357c27029cb0aa28;hb=dafa18aa6bd65fe2129a32b0e827141684bb159a;hp=89d1b7a63be61d81e5d467124181e3bc40644773;hpb=485053aa46c262f9c357cf5cf48d8f6c3f6e8223;p=sbcl.git diff --git a/src/code/debug-int.lisp b/src/code/debug-int.lisp index 89d1b7a..9b973c0 100644 --- a/src/code/debug-int.lisp +++ b/src/code/debug-int.lisp @@ -309,7 +309,7 @@ ;;; and retains roots to functions that might otherwise be collected. (defun make-compiled-debug-fun (compiler-debug-fun component) (let ((table *compiled-debug-funs*)) - (with-locked-hash-table (table) + (with-locked-system-table (table) (or (gethash compiler-debug-fun table) (setf (gethash compiler-debug-fun table) (%make-compiled-debug-fun compiler-debug-fun component)))))) @@ -1409,10 +1409,13 @@ register." args (incf i) vars)) res)) (sb!c::more-arg - ;; Just ignore the fact that the next two args are - ;; the &MORE arg context and count, and act like they - ;; are regular arguments. - nil) + ;; The next two args are the &MORE arg context and count. + (push (list :more + (compiled-debug-fun-lambda-list-var + args (incf i) vars) + (compiled-debug-fun-lambda-list-var + args (incf i) vars)) + res)) (t ;; &KEY arg (push (list :keyword