~ chicken-core (chicken-5) 2ab50f96ed2d8a5c79e21bace07a49e797ce56c6


commit 2ab50f96ed2d8a5c79e21bace07a49e797ce56c6
Author:     felix <felix@y.(none)>
AuthorDate: Sun Jul 18 08:17:56 2010 +0200
Commit:     felix <felix@y.(none)>
CommitDate: Sun Jul 18 08:17:56 2010 +0200

    use safe C routines for caar, cdar, cddr

diff --git a/library.scm b/library.scm
index a2a36c0c..f834b541 100644
--- a/library.scm
+++ b/library.scm
@@ -364,9 +364,9 @@ EOF
 (define (cadddr x) (##core#inline "C_i_cadddr" x))
 (define (cddddr x) (##core#inline "C_i_cddddr" x))
 
-(define (caar x) (car (car x)))
-(define (cdar x) (cdr (car x)))
-(define (cddr x) (cdr (cdr x)))
+(define (caar x) (##core#inline "C_i_caar" x))
+(define (cdar x) (##core#inline "C_i_cdar" x))
+(define (cddr x) (##core#inline "C_i_cddr" x))
 (define (caaar x) (car (car (car x))))
 (define (caadr x) (car (##core#inline "C_i_cadr" x)))
 (define (cadar x) (##core#inline "C_i_cadr" (car x)))
Trap