|  | // compile | 
|  |  | 
|  | // 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 | 
|  |  | 
|  | type myMap map[string] int; | 
|  |  | 
|  | func f() myMap { | 
|  | m := make(map[string] int); | 
|  | return m | 
|  | } | 
|  |  | 
|  | func main() { | 
|  | m := make(myMap); | 
|  | mp := &m; | 
|  |  | 
|  | { | 
|  | x, ok := m["key"]; | 
|  | _, _ = x, ok; | 
|  | } | 
|  | { | 
|  | x, ok := (*mp)["key"]; | 
|  | _, _ = x, ok; | 
|  | } | 
|  | { | 
|  | x, ok := f()["key"]; | 
|  | _, _ = x, ok; | 
|  | } | 
|  | { | 
|  | var x int; | 
|  | var ok bool; | 
|  | x, ok = f()["key"]; | 
|  | _, _ = x, ok; | 
|  | } | 
|  | } | 
|  |  | 
|  | /* | 
|  | * bug143.go:19: assignment count mismatch: 2 = 1 | 
|  | * bug143.go:18: x: undefined | 
|  | * bug143.go:18: ok: undefined | 
|  | */ |