From: Robert Griesemer Date: Tue, 18 Nov 2008 00:37:13 +0000 (-0800) Subject: - interface methods must have full function type X-Git-Tag: weekly.2009-11-06~2708 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=d58cd7626e8abf1d0e691bf169d06b17b1a53cef;p=gostls13.git - interface methods must have full function type R=r OCL=19410 CL=19410 --- diff --git a/test/bugs/bug121.go b/test/bugs/bug121.go new file mode 100644 index 0000000000..cc960e318c --- /dev/null +++ b/test/bugs/bug121.go @@ -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); +}