aboutsummaryrefslogtreecommitdiff
path: root/src/math/modf.go
diff options
context:
space:
mode:
authorCharlie Dorian <cldorian@gmail.com>2015-10-07 18:23:28 -0400
committerRobert Griesemer <gri@golang.org>2015-10-09 17:09:16 +0000
commit6fed2a68f7adec2a059acc4f702ebe950fdb5ce5 (patch)
tree60bd9d62f154738e99e04260147abe3d394393d2 /src/math/modf.go
parent821b54921a3cba5d853b531d4b03527c01bfc9b4 (diff)
downloadgo-6fed2a68f7adec2a059acc4f702ebe950fdb5ce5.tar.xz
math: Modf(-0) returns -0,-0
Fixes #12867 Change-Id: I8ba81c622bce2a77a6142f941603198582eaf8a4 Reviewed-on: https://go-review.googlesource.com/15570 Reviewed-by: Robert Griesemer <gri@golang.org>
Diffstat (limited to 'src/math/modf.go')
-rw-r--r--src/math/modf.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/math/modf.go b/src/math/modf.go
index 1e8376a938..81cb8b5a9c 100644
--- a/src/math/modf.go
+++ b/src/math/modf.go
@@ -14,9 +14,12 @@ func Modf(f float64) (int float64, frac float64)
func modf(f float64) (int float64, frac float64) {
if f < 1 {
- if f < 0 {
+ switch {
+ case f < 0:
int, frac = Modf(-f)
return -int, -frac
+ case f == 0:
+ return f, f // Return -0, -0 when f == -0
}
return 0, f
}