// compile // Copyright 2012 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. // Was failing to compile with 'invalid receiver' due to // incomplete type definition evaluation. Issue 3709. package p type T1 struct { F *T2 } type T2 T1 type T3 T2 func (*T3) M() // was invalid receiver