Fix type of expt when mixing floats and float complexes.

Found using random testing.
This commit is contained in:
Vincent St-Amour 2015-11-02 16:43:37 -06:00
parent ca9306bb1d
commit da97da5ff8
2 changed files with 7 additions and 2 deletions

View File

@ -1621,8 +1621,12 @@
(-InexactReal (Un -NegInt -PosInt) . -> . -InexactReal)
(-InexactReal -InexactReal . -> . (Un -InexactReal -InexactComplex))
(-Real -Int . -> . -Real)
(-FloatComplex (Un -InexactComplex -InexactReal) . -> . -FloatComplex)
(-SingleFlonumComplex (Un -SingleFlonum -SingleFlonumComplex) . -> . -SingleFlonumComplex)
(-FloatComplex -FloatComplex . -> . -FloatComplex)
(-FloatComplex -Flonum . -> . (Un -FloatComplex -Flonum))
(-FloatComplex -InexactReal . -> . (Un -FloatComplex -InexactReal))
(-FloatComplex -InexactComplex . -> . -FloatComplex)
(-SingleFlonumComplex -SingleFlonumComplex . -> . -SingleFlonumComplex)
(-SingleFlonumComplex -SingleFlonum . -> . (Un -SingleFlonumComplex -SingleFlonum))
((Un -InexactReal -InexactComplex) -InexactComplex . -> . -InexactComplex)
(-InexactComplex (Un -InexactReal -InexactComplex) . -> . -InexactComplex)
(N N . -> . N))]

View File

@ -451,6 +451,7 @@
(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 (expt (make-rectangular 3 -1.7976931348623157e+308) (flacos (real->double-flonum 59.316513f0))) (t:Un -Flonum -FloatComplex))
(tc-e (exact->inexact (ann 3 Number)) (t:Un -InexactReal -InexactComplex))
(tc-e (exact->inexact 3) -PosFlonum)
(tc-e (exact->inexact -3) -NegFlonum)