gcl.git - GNU Common Lisp

index : gcl.git
GNU Common Lisp
summary refs log tree commit diff
diff options
context:
space:
mode:
authorCamm Maguire <camm@debian.org>2014年09月12日 13:14:40 -0400
committerCamm Maguire <camm@debian.org>2014年09月12日 13:14:40 -0400
commite6df343661c954b7064e941f7fb1c9ccb6b1997b (patch)
treeedddcf959eab7f411099f7490eaee23603fbb150
parentbc1ee4850afb9445aa6f85616fb9b7cbc3b27c87 (diff)
downloadgcl-e6df343661c954b7064e941f7fb1c9ccb6b1997b.tar.gz
support for nil *quit-tag* in break-quit
Diffstat
-rwxr-xr-xgcl/lsp/gcl_top.lsp 7
1 files changed, 5 insertions, 2 deletions
diff --git a/gcl/lsp/gcl_top.lsp b/gcl/lsp/gcl_top.lsp
index a0a0407bb..b58048be6 100755
--- a/gcl/lsp/gcl_top.lsp
+++ b/gcl/lsp/gcl_top.lsp
@@ -344,8 +344,11 @@
(defun break-quit (&optional (level 0)
&aux (current-level (length *break-level*)))
(when (and (>= level 0) (< level current-level))
- (let ((x (nth (- current-level level 1) *quit-tags*)))
- (throw (cdr x) (cdr x))))
+ (let ((x (nthcdr (- current-level level 1) *quit-tags*))
+ (y (member nil *quit-tags* :key 'cdr)))
+ (if (tailp x y)
+ (format *debug-io* "The *quit-tag* is disabled at level ~s.~%" (length y))
+ (throw (cdar x) (cdar x)))))
(break-current))
(defun break-previous (&optional (offset 1))
generated by cgit v1.2.3 (git 2.25.1) at 2025年09月06日 15:15:01 +0000

AltStyle によって変換されたページ (->オリジナル) /