| // Copyright 2016 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 a | |
| type T struct { | |
| } | |
| func F() []T { | |
| return []T{T{}} | |
| } | |
| func Fi() []T { | |
| return []T{{}} // element with implicit composite literal type | |
| } | |
| func Fp() []*T { | |
| return []*T{&T{}} | |
| } | |
| func Fip() []*T { | |
| return []*T{{}} // element with implicit composite literal type | |
| } | |
| func Gp() map[int]*T { | |
| return map[int]*T{0: &T{}} | |
| } | |
| func Gip() map[int]*T { | |
| return map[int]*T{0: {}} // element with implicit composite literal type | |
| } | |
| func Hp() map[*T]int { | |
| return map[*T]int{&T{}: 0} | |
| } | |
| func Hip() map[*T]int { | |
| return map[*T]int{{}: 0} // key with implicit composite literal type | |
| } |