cmd/gc: check for initialization cycles in method values

Fixes #7960.

LGTM=rsc
R=rsc
CC=golang-codereviews, gri
https://golang.org/cl/159800045
This commit is contained in:
Chris Manghane 2014-10-14 19:12:10 -07:00
parent e9ecd4aec5
commit fe8f799ef7
27 changed files with 539 additions and 1 deletions

View file

@ -0,0 +1,20 @@
// errorcheck
// Copyright 2014 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.
// Check for cycles in an embedded struct literal's method value.
package embedlitmethvalue
type T int
func (T) m() int {
_ = x
return 0
}
type E struct{ T }
var x = E{}.m // ERROR "initialization loop|depends upon itself"