(intexp base power))
(((foreach single-float double-float)
rational)
- (real-expt base power '(dispatch-type base)))
+ (or (expt-xfrm base power)
+ (real-expt base power '(dispatch-type base))))
(((foreach fixnum (or bignum ratio) single-float)
(foreach ratio single-float))
- (real-expt base power 'single-float))
+ (or (expt-xfrm (coerce base 'single-float) power)
+ (real-expt base power 'single-float)))
(((foreach fixnum (or bignum ratio) single-float double-float)
double-float)
- (real-expt base power 'double-float))
+ (or (expt-xfrm (coerce base 'double-float) power)
+ (real-expt base power 'double-float)))
((double-float single-float)
- (real-expt base power 'double-float))
+ (or (expt-xfrm (coerce base 'double-float) power)
+ (real-expt base power 'double-float)))
#+double-double
(((foreach fixnum (or bignum ratio) single-float double-float
double-double-float)
double-double-float)
- (dd-%pow (coerce base 'double-double-float) power))
+ (or (expt-xfrm (coerce base 'double-double-float) power)
+ (dd-%pow (coerce base 'double-double-float) power)))
#+double-double
((double-double-float
(foreach fixnum (or bignum ratio) single-float double-float))
- (dd-%pow base (coerce power 'double-double-float)))
+ (or (expt-xfrm base power)
+ (dd-%pow base (coerce power 'double-double-float))))
(((foreach (complex rational) (complex single-float) (complex double-float)
#+double-double (complex double-double-float))
rational)