ashinn / chibi-scheme

Official chibi-scheme repository
Other
1.2k stars 142 forks source link

SRFI 231: interval-intersect fix #984

Closed gambiteer closed 2 months ago

gambiteer commented 2 months ago
 chibi-scheme
> (import (srfi 231))
> (interval-intersect (make-interval (quote #(6 -9 -6)) (quote #(6 -5 -3))))
#f

Fix:

diff --git a/lib/srfi/231/base.scm b/lib/srfi/231/base.scm
index 27b3a755..c5cad8bf 100644
--- a/lib/srfi/231/base.scm
+++ b/lib/srfi/231/base.scm
@@ -218,7 +218,7 @@
                  (or (null? o) (apply = (map interval-dimension ls)))))
     (let ((lower (apply vector-map max (map interval-lb ls)))
           (upper (apply vector-map min (map interval-ub ls))))
-      (and (vector-every < lower upper)
+      (and (vector-every <= lower upper)
            (make-interval lower upper)))))

 (define (interval-translate iv translation)