From 62a09958d2d8eca8d44ade23e83a9ecdc4777ecc Mon Sep 17 00:00:00 2001 From: Eric Dobson Date: Wed, 26 Feb 2014 00:34:22 -0800 Subject: [PATCH] Revert "Fix type of - to not be wrong on negative fixnums." The math library is relying on the current broken behavior. Revert until we can fix it. --- .../typed-racket/base-env/base-env-numeric.rkt | 9 +-------- .../tests/typed-racket/unit-tests/typecheck-tests.rkt | 3 +-- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt index 6ee8812623..71a72f7874 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/base-env/base-env-numeric.rkt @@ -656,13 +656,6 @@ (-> -Zero neg pos) (-> -Zero non-pos non-neg))) - ;; Used because (- min-fixnum) > max-fixnum - (define (half-negation-pattern pos neg non-neg non-pos) - (list (-> pos neg) - (-> non-neg non-pos) - (-> -Zero pos neg) - (-> -Zero non-neg non-pos))) - (define abs-cases ; used both for abs and magnitude (list (map unop (list -Zero -One -PosByte -Byte -PosIndex -Index -PosFixnum -NonNegFixnum)) @@ -1188,7 +1181,7 @@ [- (from-cases (binop -Zero) - (half-negation-pattern -PosFixnum -NegFixnum -NonNegFixnum -NonPosFixnum) + (negation-pattern -PosFixnum -NegFixnum -NonNegFixnum -NonPosFixnum) (negation-pattern -PosInt -NegInt -Nat -NonPosInt) (negation-pattern -PosRat -NegRat -NonNegRat -NonPosRat) (negation-pattern -PosFlonum -NegFlonum -NonNegFlonum -NonPosFlonum) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt index 517e40dac9..382b74fd1d 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/unit-tests/typecheck-tests.rkt @@ -242,8 +242,7 @@ (tc-e (+ 3 4) -PosIndex) (tc-e (- 1) -NegFixnum) (tc-e (- 1073741823) -NegFixnum) - (tc-e (- -4) -PosInt) - (tc-e (- (ann -5 Nonpositive-Fixnum)) -Nat) + (tc-e (- -4) -PosFixnum) (tc-e/t 1152921504606846975 -PosInt) (tc-e/t -1152921504606846975 -NegInt) (tc-e (- 3253463567262345623) -NegInt)