]> Cypherpunks repositories - gostls13.git/commitdiff
- interface methods must have full function type
authorRobert Griesemer <gri@golang.org>
Tue, 18 Nov 2008 00:37:13 +0000 (16:37 -0800)
committerRobert Griesemer <gri@golang.org>
Tue, 18 Nov 2008 00:37:13 +0000 (16:37 -0800)
R=r
OCL=19410
CL=19410

test/bugs/bug121.go [new file with mode: 0644]

diff --git a/test/bugs/bug121.go b/test/bugs/bug121.go
new file mode 100644 (file)
index 0000000..cc960e3
--- /dev/null
@@ -0,0 +1,25 @@
+// errchk $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
+
+type T ()
+
+type I interface {
+       f, g ();
+       h T;  // should only allow FunctionType here
+}
+
+type S struct {
+}
+
+func (s *S) f() {}
+func (s *S) g() {}
+func (s *S) h() {}  // here we can't write (s *S) T either
+
+func main() {
+       var i I = new(S);
+}