Extend type of min to preserve fixnumness.
This commit is contained in:
parent
6b681f04c4
commit
057a2bd0d2
|
@ -212,6 +212,9 @@
|
|||
(tc-e (angle 2.3) -Zero)
|
||||
(tc-e (magnitude 3/4) -NonNegRat)
|
||||
(tc-e (magnitude 3+2i) -NonNegReal)
|
||||
(tc-e (min (ann 3 Fixnum) (ann 3 Fixnum)) -Fixnum)
|
||||
(tc-e (min (ann -2 Negative-Fixnum) (ann 3 Fixnum)) -NegFixnum)
|
||||
(tc-e (min (ann 3 Fixnum) (ann -2 Negative-Fixnum)) -NegFixnum)
|
||||
|
||||
[tc-e/t (lambda: () 3) (t:-> -PosByte : -true-lfilter)]
|
||||
[tc-e/t (lambda: ([x : Number]) 3) (t:-> N -PosByte : -true-lfilter)]
|
||||
|
|
|
@ -1251,7 +1251,10 @@
|
|||
[min
|
||||
(from-cases (map varop (list -Zero -One))
|
||||
(commutative-case -Zero -One)
|
||||
(map varop (list -PosByte -Byte -PosIndex -Index -PosInt -Nat))
|
||||
(map varop (list -PosByte -Byte -PosIndex -Index -PosFixnum -NonNegFixnum))
|
||||
(commutative-case -NegFixnum -Fixnum)
|
||||
(commutative-case -NonPosFixnum -Fixnum)
|
||||
(map varop (list -Fixnum -PosInt -Nat))
|
||||
(commutative-case -NegInt -Int)
|
||||
(commutative-case -NonPosInt -Int)
|
||||
(map varop (list -Int -PosRat -NonNegRat))
|
||||
|
|
Loading…
Reference in New Issue
Block a user