diff options
| author | Charlie Dorian <cldorian@gmail.com> | 2015-10-07 18:23:28 -0400 |
|---|---|---|
| committer | Robert Griesemer <gri@golang.org> | 2015-10-09 17:09:16 +0000 |
| commit | 6fed2a68f7adec2a059acc4f702ebe950fdb5ce5 (patch) | |
| tree | 60bd9d62f154738e99e04260147abe3d394393d2 /src/math/modf.go | |
| parent | 821b54921a3cba5d853b531d4b03527c01bfc9b4 (diff) | |
| download | go-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.go | 5 |
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 } |
