diff --git a/code/error.lisp b/code/error.lisp index a7cacdf3d88156e7c000836b0ceb1d5ad98eb9d2..00b5a659a95bcd13a94ea35bb3408e287fea4df7 100644 --- a/code/error.lisp +++ b/code/error.lisp @@ -5,7 +5,7 @@ ;;; Carnegie Mellon University, and has been placed in the public domain. ;;; (ext:file-comment - "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/error.lisp,v 1.68 2003/04/13 13:44:54 gerd Exp $") + "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/error.lisp,v 1.69 2003/04/16 19:41:05 gerd Exp $") ;;; ;;; ********************************************************************** ;;; @@ -1139,7 +1139,9 @@ (defmacro define-nil-returning-restart (name args doc) `(defun ,name (,@args &optional condition) ,doc - (if (find-restart ',name condition) (invoke-restart ',name ,@args)))) + (let ((restart (find-restart ',name condition))) + (when restart + (invoke-restart restart ,@args))))) (define-nil-returning-restart continue () "Transfer control to a restart named continue, returning nil if none exists.")