diff --git a/collects/tests/typed-scheme/optimizer/missed-optimizations/precision-loss.rkt b/collects/tests/typed-scheme/optimizer/missed-optimizations/precision-loss.rkt index b89dde94b8..15ea7f6cfb 100644 --- a/collects/tests/typed-scheme/optimizer/missed-optimizations/precision-loss.rkt +++ b/collects/tests/typed-scheme/optimizer/missed-optimizations/precision-loss.rkt @@ -1,14 +1,14 @@ #; ( +precision-loss.rkt 24:0 (#%app + (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 24:3 (#%app * (quote 3/4) (quote 2/3)) precision-loss.rkt 24:1 + -- binary float -precision-loss.rkt 24:3 (#%app * (quote 3/4) (quote 2/3)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 24:0 (#%app + (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) precision-loss.rkt 26:1 + -- binary float +precision-loss.rkt 28:0 (#%app + (#%app - (quote 3/4)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:3 (#%app - (quote 3/4)) precision-loss.rkt 28:1 + -- binary float -precision-loss.rkt 28:3 (#%app - (quote 3/4)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 28:0 (#%app + (#%app - (quote 3/4)) (quote 2.0)) precision-loss.rkt 30:1 + -- binary float precision-loss.rkt 36:0 (#%app * (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- binary, args all float-arg-expr, return type not Float -- caused by: 36:8 (#%app * (quote 3/4) (quote 2/3)) +precision-loss.rkt 36:0 (#%app * (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 36:8 (#%app * (quote 3/4) (quote 2/3)) precision-loss.rkt 36:8 (#%app * (quote 3/4) (quote 2/3)) -- binary, args all float-arg-expr, return type not Float -- caused by: 36:11 (quote 3/4) -precision-loss.rkt 36:8 (#%app * (quote 3/4) (quote 2/3)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 36:0 (#%app * (#%app * (quote 3/4) (quote 2/3)) (quote 2.0)) 2.5 2.75 1.25 diff --git a/collects/tests/typed-scheme/optimizer/tests/float-real.rkt b/collects/tests/typed-scheme/optimizer/tests/float-real.rkt index 29ee686f29..edd9c28d7d 100644 --- a/collects/tests/typed-scheme/optimizer/tests/float-real.rkt +++ b/collects/tests/typed-scheme/optimizer/tests/float-real.rkt @@ -1,12 +1,12 @@ #; ( float-real.rkt 18:1 + -- binary float +float-real.rkt 19:0 (#%app + (quote 2.3) (#%app * (quote 2) (quote 3.2))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 19:7 (#%app * (quote 2) (quote 3.2)) float-real.rkt 19:1 + -- binary float float-real.rkt 19:7 (#%app * (quote 2) (quote 3.2)) -- binary, args all float-arg-expr, return type not Float -- caused by: 19:15 (quote 2) -float-real.rkt 19:7 (#%app * (quote 2) (quote 3.2)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 19:0 (#%app + (quote 2.3) (#%app * (quote 2) (quote 3.2))) float-real.rkt 20:0 (#%app * (quote 2.3) (#%app * (quote 2) (quote 3.1))) -- binary, args all float-arg-expr, return type not Float -- caused by: 20:7 (#%app * (quote 2) (quote 3.1)) +float-real.rkt 20:0 (#%app * (quote 2.3) (#%app * (quote 2) (quote 3.1))) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 20:7 (#%app * (quote 2) (quote 3.1)) float-real.rkt 20:7 (#%app * (quote 2) (quote 3.1)) -- binary, args all float-arg-expr, return type not Float -- caused by: 20:15 (quote 2) -float-real.rkt 20:7 (#%app * (quote 2) (quote 3.1)) -- exact arithmetic subexpression inside a float expression, extra precision discarded -- caused by: 20:0 (#%app * (quote 2.3) (#%app * (quote 2) (quote 3.1))) 5.3 8.7 14.26 diff --git a/collects/typed-scheme/optimizer/float.rkt b/collects/typed-scheme/optimizer/float.rkt index 79c5419eeb..43e5996ebf 100644 --- a/collects/typed-scheme/optimizer/float.rkt +++ b/collects/typed-scheme/optimizer/float.rkt @@ -126,7 +126,7 @@ [e:arith-expr (log-missed-optimization "exact arithmetic subexpression inside a float expression, extra precision discarded" - subexpr this-syntax)] + this-syntax subexpr)] [_ #f]))) safe-to-opt?) #:with opt