1// $G $D/import2.go && $G $D/$F.go 2 3// NOTE: This test is not run by 'run.go' and so not run by all.bash. 4// To run this test you must use the ./run shell script. 5 6// Copyright 2010 The Go Authors. All rights reserved. 7// Use of this source code is governed by a BSD-style 8// license that can be found in the LICENSE file. 9 10// Test that all the types from import2.go made it 11// intact and with the same meaning, by assigning to or using them. 12 13package main 14 15import "./import2" 16 17func f3(func() func() int) 18 19func main() { 20 p.F3(p.F1) 21 p.F3(p.F2()) 22 f3(p.F1) 23 f3(p.F2()) 24 25 p.C1 = (chan<- (chan int))(nil) 26 p.C2 = (chan (<-chan int))(nil) 27 p.C3 = (<-chan (chan int))(nil) 28 p.C4 = (chan (chan<- int))(nil) 29 30 p.C5 = (<-chan (<-chan int))(nil) 31 p.C6 = (chan<- (<-chan int))(nil) 32 p.C7 = (chan<- (chan<- int))(nil) 33 34 p.C8 = (<-chan (<-chan (chan int)))(nil) 35 p.C9 = (<-chan (chan<- (chan int)))(nil) 36 p.C10 = (chan<- (<-chan (chan int)))(nil) 37 p.C11 = (chan<- (chan<- (chan int)))(nil) 38 p.C12 = (chan (chan<- (<-chan int)))(nil) 39 p.C13 = (chan (chan<- (chan<- int)))(nil) 40 41 p.R1 = (chan <- chan int)(nil) 42 p.R3 = (<- chan chan int)(nil) 43 p.R4 = (chan chan <- int)(nil) 44 45 p.R5 = (<- chan <- chan int)(nil) 46 p.R6 = (chan <- <- chan int)(nil) 47 p.R7 = (chan <- chan <- int)(nil) 48 49 p.R8 = (<- chan <- chan chan int)(nil) 50 p.R9 = (<- chan chan <- chan int)(nil) 51 p.R10 = (chan <- <- chan chan int)(nil) 52 p.R11 = (chan <- chan <- chan int)(nil) 53 p.R12 = (chan chan <- <- chan int)(nil) 54 p.R13 = (chan chan <- chan <- int)(nil) 55 56} 57 58