blob: a60866044d1f6ff628f3e949bc851187024617da [file] [log] [blame]
// $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 {
println("nf=", nf, " x=", x, " y=", y)
panic("fail")
}
if a != "A" || aok != true || b != "" || bok != false {
println("a=", a, " aok=", aok, " b=", b, " bok=", bok)
panic("fail")
}
}