aboutsummaryrefslogtreecommitdiff
path: root/libgo/go/math/ldexp.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/math/ldexp.go')
-rw-r--r--libgo/go/math/ldexp.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/libgo/go/math/ldexp.go b/libgo/go/math/ldexp.go
index 2898f5dd498..e91a090c986 100644
--- a/libgo/go/math/ldexp.go
+++ b/libgo/go/math/ldexp.go
@@ -13,10 +13,15 @@ package math
// Ldexp(NaN, exp) = NaN
//extern ldexp
-func libc_ldexp(float64, int) float64
+func libc_ldexp(float64, int32) float64
func Ldexp(frac float64, exp int) float64 {
- r := libc_ldexp(frac, exp)
+ if exp > MaxInt32 {
+ exp = MaxInt32
+ } else if exp < MinInt32 {
+ exp = MinInt32
+ }
+ r := libc_ldexp(frac, int32(exp))
return r
}