~ chicken-core (chicken-5) 4287d477b8fa1746ee536a85862407f6b930bd3c
commit 4287d477b8fa1746ee536a85862407f6b930bd3c Author: felix <felix@call-with-current-continuation.org> AuthorDate: Thu Aug 19 05:48:56 2010 -0400 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Thu Aug 19 05:48:56 2010 -0400 two fixes taken over from total-irregex work diff --git a/compiler.scm b/compiler.scm index 435909b0..5d064d2f 100644 --- a/compiler.scm +++ b/compiler.scm @@ -1251,10 +1251,12 @@ (##sys#strip-syntax x se)) (define stripu ##sys#strip-syntax) (define (globalize sym) - (let loop ((se se)) ; ignores syntax bindings - (cond ((null? se) (##sys#alias-global-hook sym #f)) - ((and (eq? sym (caar se)) (symbol? (cdar se))) (cdar se)) - (else (loop (cdr se)))))) + (if (symbol? sym) + (let loop ((se se)) ; ignores syntax bindings + (cond ((null? se) (##sys#alias-global-hook sym #f)) + ((and (eq? sym (caar se)) (symbol? (cdar se))) (cdar se)) + (else (loop (cdr se))))) + sym)) (define (globalize-all syms) (map globalize syms)) (call-with-current-continuation (lambda (return) diff --git a/scrutinizer.scm b/scrutinizer.scm index 097a1e55..85f9fa39 100644 --- a/scrutinizer.scm +++ b/scrutinizer.scm @@ -89,8 +89,14 @@ ((eq? a 'deprecated) (report loc - (sprintf "use of deprecated toplevel identifier `~a'" id) ) + (sprintf "use of deprecated library procedure `~a'" id) ) '*) + ((and (pair? a) (eq? (car a) 'deprecated)) + (report + loc + (sprintf "use of deprecated library procedure `~a' - consider using `~a' instead" + id (cadr a))) + '*) (else (list a))))) (else '*))) (define (variable-result id e loc) @@ -469,7 +475,8 @@ (every procedure-type? (cdr t))))))) (define (procedure-argument-types t n) (cond ((or (memq t '(* procedure)) - (not-pair? t) ) + (not-pair? t) + (eq? 'deprecated (car t))) (values (make-list n '*) #f)) ((eq? 'procedure (car t)) (let* ((vf #f) diff --git a/types.db b/types.db index f28c72a3..52fcbcb6 100644 --- a/types.db +++ b/types.db @@ -350,7 +350,7 @@ (get-keyword (procedure get-keyword (symbol list #!optional *) *)) (get-output-string (procedure get-output-string (port) string)) (get-properties (procedure get-properties (symbol list) symbol * list)) -(getenv deprecated) +(getenv (deprecated get-environment-variable)) (getter-with-setter (procedure getter-with-setter (procedure procedure #!optional string) procedure)) (implicit-exit-handler (procedure implicit-exit-handler (#!optional procedure) procedure)) (keyword->string (procedure keyword->string (symbol) string)) @@ -455,7 +455,7 @@ (merge! (procedure merge! (list list (procedure (* *) *)) list)) (never? (procedure never? (#!rest) boolean)) (none? (procedure none? (*) boolean)) -(noop deprecated) +(noop (deprecated void)) (o (procedure o (#!rest (procedure (*) *)) (procedure (*) *))) (project (procedure project (fixnum) procedure)) (queue->list (procedure queue->list ((struct queue)) list))Trap