diff options
Diffstat (limited to 'test/fixedbugs/bug434.go')
-rw-r--r-- | test/fixedbugs/bug434.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/fixedbugs/bug434.go b/test/fixedbugs/bug434.go new file mode 100644 index 0000000..5abb567 --- /dev/null +++ b/test/fixedbugs/bug434.go @@ -0,0 +1,32 @@ +// run + +// Copyright 2012 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +// Test that typed and untyped negative zero floating point constants +// are treated as equivalent to zero constants. + +package main + +import "math" + +const zero = 0.0 + +func main() { + x := -zero + b := math.Float64bits(x) + if b != 0 { + panic(b) + } + x = -float64(zero) + b = math.Float64bits(x) + if b != 0 { + panic(b) + } + v := x + b = math.Float64bits(-v) + if b != 0x8000000000000000 { + panic(b) + } +} |