// errorcheck // Copyright 2010 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 I1 interface { // GC_ERROR "invalid recursive type" m() I2 // TODO(mdempsky): The duplicate method error is silly // and redundant, but tricky to prevent as it's actually // being emitted against the underlying interface type // literal, not I1 itself. I2 // ERROR "loop|interface|duplicate method m" } type I2 interface { I1 // GCCGO_ERROR "loop|interface" } var i1 I1 = i2 var i2 I2 var i2a I2 = i1