X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=tests%2Fdynamic-extent.impure.lisp;h=6841e4d6b05c3dc734c7a6646e48feb5fe3a15fc;hb=e35a79c777f51eddd3dcb0ca27000ce4cfa60e73;hp=6c83f8a49bbc1d7ba2350992326e7b8fc4fc9935;hpb=1d06300e09f767a38bbe6d5b38232ca334ab1913;p=sbcl.git diff --git a/tests/dynamic-extent.impure.lisp b/tests/dynamic-extent.impure.lisp index 6c83f8a..6841e4d 100644 --- a/tests/dynamic-extent.impure.lisp +++ b/tests/dynamic-extent.impure.lisp @@ -21,8 +21,17 @@ sb-ext:*stack-allocate-dynamic-extent* t) (defmacro defun-with-dx (name arglist &body body) - `(defun ,name ,arglist - ,@body)) + (let ((debug-name (sb-int:symbolicate name "-HIGH-DEBUG")) + (default-name (sb-int:symbolicate name "-DEFAULT"))) + `(progn + (defun ,debug-name ,arglist + (declare (optimize debug)) + ,@body) + (defun ,default-name ,arglist + ,@body) + (defun ,name (&rest args) + (apply #',debug-name args) + (apply #',default-name args))))) (declaim (notinline opaque-identity)) (defun opaque-identity (x) @@ -682,7 +691,7 @@ (bdowning-2005-iv-16)) (declaim (inline my-nconc)) -(defun-with-dx my-nconc (&rest lists) +(defun my-nconc (&rest lists) (declare (dynamic-extent lists)) (apply #'nconc lists)) (defun-with-dx my-nconc-caller (a b c)