| // Copyright 2012 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{ A, B int } | |
| type A []int | |
| type M map[int]int | |
| func F1() int { | |
| if (T{1, 2}) == (T{3, 4}) { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F2() int { | |
| if (M{1: 2}) == nil { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F3() int { | |
| if nil == (A{}) { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F4() int { | |
| if a := (A{}); a == nil { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F5() int { | |
| for k, v := range (M{1: 2}) { | |
| return v - k | |
| } | |
| return 0 | |
| } | |
| func F6() int { | |
| switch a := (T{1, 1}); a == (T{1, 2}) { | |
| default: | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F7() int { | |
| for m := (M{}); len(m) < (T{1, 2}).A; m[1] = (A{1})[0] { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F8() int { | |
| if a := (&T{1, 1}); a != nil { | |
| return 1 | |
| } | |
| return 0 | |
| } | |
| func F9() int { | |
| var a *T | |
| if a = (&T{1, 1}); a != nil { | |
| return 1 | |
| } | |
| return 0 | |
| } | |