chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-hackers] [PATCH] "-->" is not recognized when nested procedure


From: Felix
Subject: [Chicken-hackers] [PATCH] "-->" is not recognized when nested procedure types are used
Date: Sun, 15 Jul 2012 23:23:32 +0200 (CEST)

The attached patch fixes a problem of type-declarations like

(: foo (number --> (number -> number)))

Validation of the type in the scrutinizer will ignore "foo" being
declared "pure" (the nested procedure-type causes an overwrite
of the variable that holds the "purity" status).

This patch fixes #883.


cheers,
felix
>From abd5c53bb4700ce7e08e129d1890cf9939475dee Mon Sep 17 00:00:00 2001
From: felix <address@hidden>
Date: Sun, 15 Jul 2012 23:19:58 +0200
Subject: [PATCH] retain whether procedure-type is pure when using nested 
procedure types in type-declarations

---
 scrutinizer.scm |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/scrutinizer.scm b/scrutinizer.scm
index 8c2788e..37eefbc 100755
--- a/scrutinizer.scm
+++ b/scrutinizer.scm
@@ -1996,7 +1996,7 @@
             (lambda (p)
               (let* ((cleanf (eq? '--> (car p)))
                      (ok (or (not rec) (not cleanf))))
-                (set! clean cleanf)
+                (unless rec (set! clean cleanf))
                 (let ((cp (memq ': (cdr p))))
                   (cond ((not cp)
                          (and ok
-- 
1.7.0.4


reply via email to

[Prev in Thread] Current Thread [Next in Thread]