~ chicken-core (chicken-5) d7aad7e15128253c0e502c1a00ef1f977e28bb46
commit d7aad7e15128253c0e502c1a00ef1f977e28bb46 Author: Evan Hanson <evhan@foldling.org> AuthorDate: Tue Sep 9 21:46:30 2014 +1200 Commit: Christian Kellermann <ckeen@pestilenz.org> CommitDate: Wed Sep 10 09:48:00 2014 +0200 Evaluate length/##sys#length subforms when specializing for null Signed-off-by: Christian Kellermann <ckeen@pestilenz.org> diff --git a/types.db b/types.db index 2621686a..2b6c85b9 100644 --- a/types.db +++ b/types.db @@ -156,11 +156,11 @@ (##sys#list (#(procedure #:pure) ##sys#list (#!rest) list)) (length (#(procedure #:clean #:enforce) length (list) fixnum) ; may loop - ((null) '0) + ((null) (let ((#(tmp) #(1))) '0)) ((list) (##core#inline "C_u_i_length" #(1)))) (##sys#length (#(procedure #:clean #:enforce) ##sys#length (list) fixnum) - ((null) '0) + ((null) (let ((#(tmp) #(1))) '0)) ((list) (##core#inline "C_u_i_length" #(1)))) ;; these are special cased (see scrutinizer.scm)Trap