diff --git a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/float.rkt b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/float.rkt index 4e810898..b39b4750 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/float.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-lib/typed-racket/optimizer/float.rkt @@ -98,6 +98,7 @@ (define (maybe-exact-rational? stx) (and (subtypeof? stx -Real) (not (subtypeof? stx -Flonum)) + (not (subtypeof? stx -SingleFlonum)) (not (subtypeof? stx -Int)))) diff --git a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/tests/dead-inf-comp.rkt b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/tests/dead-inf-comp.rkt index f2eda5d5..5ca1f792 100644 --- a/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/tests/dead-inf-comp.rkt +++ b/pkgs/typed-racket-pkgs/typed-racket-test/tests/typed-racket/optimizer/tests/dead-inf-comp.rkt @@ -1,22 +1,6 @@ #;#; #<= -inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 105:4 (>= rat -inf.f) -- possible exact real arith TR info: dead-inf-comp.rkt 110:41 displayln -- hidden parameter -TR info: dead-inf-comp.rkt 57:4 (< rat +inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 60:4 (< +inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 63:4 (< rat -inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 66:4 (< -inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 70:4 (> +inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 73:4 (> rat +inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 76:4 (> -inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 79:4 (> rat -inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 83:4 (<= rat +inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 86:4 (<= +inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 89:4 (<= rat -inf.f) -- possible exact real arith -TR info: dead-inf-comp.rkt 92:4 (<= -inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 96:4 (>= +inf.f rat) -- possible exact real arith -TR info: dead-inf-comp.rkt 99:4 (>= rat +inf.f) -- possible exact real arith TR missed opt: dead-inf-comp.rkt 10:4 (< rat -inf.0) -- generic comparison -- caused by: 10:7 rat TR missed opt: dead-inf-comp.rkt 110:0 (for: ((i (in-range 5 +inf.0 2)) (j 3)) (displayln i)) -- generic comparison -- caused by: 110:0 (for: ((i (in-range 5 +inf.0 2)) (j 3)) (displayln i)) TR missed opt: dead-inf-comp.rkt 13:4 (< -inf.0 rat) -- generic comparison -- caused by: 13:14 rat