diff --git a/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt b/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt index 0f17d500..00bf1603 100644 --- a/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt +++ b/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt @@ -489,7 +489,7 @@ (fl-type-lambda (from-cases (-FlZero -Fl . -> . -FlZero) ;; we don't have Pos Pos -> Pos, possible underflow - (-NonNegFl -NonNegFl . -> . -NonNegFl) + (-PosFl -PosFl . -> . -NonNegFl) (commutative-binop -PosFl -NegFl -NonPosFl) (-NegFl -NegFl . -> . -NonNegFl) (binop -Fl)))) diff --git a/typed-racket-test/unit-tests/typecheck-tests.rkt b/typed-racket-test/unit-tests/typecheck-tests.rkt index 94a7a928..ffc5532e 100644 --- a/typed-racket-test/unit-tests/typecheck-tests.rkt +++ b/typed-racket-test/unit-tests/typecheck-tests.rkt @@ -450,6 +450,7 @@ (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 (fl/ 1.7976931348623157e+308 -0.0e0) -Flonum) (tc-e (exact->inexact (ann 3 Number)) (t:Un -InexactReal -InexactComplex)) (tc-e (exact->inexact 3) -PosFlonum) (tc-e (exact->inexact -3) -NegFlonum)