diff options
author | Russ Cox <rsc@golang.org> | 2011-07-28 16:28:23 -0400 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2011-07-28 16:28:23 -0400 |
commit | a962b7f35bd7d0f15f630cbe1b42ebbb833fae49 (patch) | |
tree | fd33bbe2b4639d555c091f7346773682b4d7d390 /test/fixedbugs/bug364.go | |
parent | f5ff40104e75714c193768c665b45ada1b98d6f5 (diff) | |
download | go-a962b7f35bd7d0f15f630cbe1b42ebbb833fae49.tar.gz |
5g: defer vs optimizer bug
Fixes issue 1924.
R=ken2
CC=golang-dev
http://codereview.appspot.com/4802063
Diffstat (limited to 'test/fixedbugs/bug364.go')
-rw-r--r-- | test/fixedbugs/bug364.go | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/fixedbugs/bug364.go b/test/fixedbugs/bug364.go new file mode 100644 index 000000000..a17453419 --- /dev/null +++ b/test/fixedbugs/bug364.go @@ -0,0 +1,25 @@ +package main + +import "fmt" + +var s string + +func accum(args ...interface{}) { + s += fmt.Sprintln(args...) +} + +func f(){ + v := 0.0 + for i := 0; i < 3; i++ { + v += 0.1 + defer accum(v) + } +} + +func main() { + f() + if s != "0.30000000000000004\n0.2\n0.1\n" { + println("BUG: defer") + print(s) + } +} |