examples:
chan <- (chan int)
chan (<- chan int)
(map[string]func())("a": main)
R=ken
OCL=25151
CL=25151
$$->type = $5;
}
| structtype
+| '(' type ')'
+ {
+ $$ = $2;
+ }
/*
* to avoid parsing conflicts, type is split into
| Bchantype
| Bfntype
| Bothertype
+| '(' type ')'
+ {
+ $$ = $2;
+ }
non_name_type:
chantype
nametype
| Bfntype
| Bothertype
+| '(' Btype ')'
+ {
+ $$ = $2;
+ }
Anon_fn_type:
Achantype
| Bchantype
| Bothertype
-
nametype:
LATYPE
{
--- /dev/null
+// $G $D/$F.go
+
+// 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
+
+func f(interface{})
+func g() {}
+func main() {
+ f(map[string]string("a":"b","c":"d"));
+ f((map[string]string)("a":"b","c":"d"));
+ f((map[string]func())("a":g,"c":g));
+ f(make(chan(<-chan int)));
+ f(make(chan<-(chan int)));
+}