gcl.git - GNU Common Lisp

index : gcl.git
GNU Common Lisp
summary refs log tree commit diff
diff options
context:
space:
mode:
Diffstat
-rwxr-xr-xgcl/cmpnew/gcl_cmpenv.lsp 7
1 files changed, 4 insertions, 3 deletions
diff --git a/gcl/cmpnew/gcl_cmpenv.lsp b/gcl/cmpnew/gcl_cmpenv.lsp
index 51d50e446..1e9a26bc6 100755
--- a/gcl/cmpnew/gcl_cmpenv.lsp
+++ b/gcl/cmpnew/gcl_cmpenv.lsp
@@ -382,9 +382,10 @@
(type
(proclaim-var (cadr decl) (cddr decl)))
(ftype
- (check-type (cadr decl) cons)
- (check-type (caadr decl) (eql function))
- (add-function-proclamation (caddr decl) (cdr (cadr decl)) (cddr decl)))
+ (let* ((d (cdr decl))(def (pop d)))
+ (assert (subtypep def 'function))
+ (when (listp def)
+ (add-function-proclamation (pop d) (cdr def) d))))
(function
(add-function-proclamation (cadr decl) (cddr decl) nil))
(inline
generated by cgit v1.2.3 (git 2.39.1) at 2025年09月03日 00:12:09 +0000

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