~ chicken-core (chicken-5) dc18241562fbef3d29f900ebd497e30e7cebf0f3
commit dc18241562fbef3d29f900ebd497e30e7cebf0f3
Author: felix <felix@call-with-current-continuation.org>
AuthorDate: Sat Apr 9 14:38:56 2011 +0200
Commit: felix <felix@call-with-current-continuation.org>
CommitDate: Sat Apr 9 14:38:56 2011 +0200
match-spec.: the endless fiddling
diff --git a/scrutinizer.scm b/scrutinizer.scm
index 121cb334..39c42db6 100755
--- a/scrutinizer.scm
+++ b/scrutinizer.scm
@@ -656,9 +656,8 @@
(cons
(cond ((eq? (cdr a) '*) '*)
(else
- (debugging
- 'x "adjusting procedure argument type"
- (car vars) (cdr a))
+ (d "adjusting procedure argument type for `~a' to: ~a"
+ (car vars) (cdr a))
(cdr a) ))
(loop (sub1 argc) (cdr vars) (cdr args)))))
(else
@@ -897,7 +896,8 @@
((procedure) (bomb "match-specialization: invalid complex procedure type" st))
(else (equal? st t))))
((eq? st '*))
- ((eq? st 'list) (match '(or pair null) t))
+ ;; "list" different from "number": a pair is not necessarily a list:
+ ((eq? st 'list) (eq? t 'list))
((eq? st 'number) (match '(or fixnum float) t))
((pair? t)
(case (car t)
Trap