1
0
mirror of https://github.com/golang/go synced 2024-11-12 03:00:22 -07:00
go/test/fixedbugs/bug227.go
2009-12-15 14:26:33 -08:00

35 lines
644 B
Go

// $G $D/$F.go && $L $F.$A && ./$A.out
// Copyright 2009 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.
package main
var (
nf int
x, y, z = f(), f(), f()
m = map[string]string{"a":"A"}
a, aok = m["a"]
b, bok = m["b"]
)
func look(s string) (string, bool) {
x, ok := m[s]
return x, ok
}
func f() int {
nf++
return nf
}
func main() {
if nf != 3 || x != 1 || y != 2 || z != 3 {
panic("nf=", nf, " x=", x, " y=", y)
}
if a != "A" || aok != true || b != "" || bok != false {
panic("a=", a, " aok=", aok, " b=", b, " bok=", bok)
}
}