modernc.org/gc@v1.0.1-0.20240304020402-f0dba7c97c2b/testdata/errchk/test/fixedbugs/issue4847.go (about) 1 // errorcheck 2 3 // Copyright 2013 The Go Authors. All rights reserved. 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file. 6 7 // Issue 4847: initialization loop is not detected. 8 9 package p 10 11 type ( 12 E int 13 S int 14 ) 15 16 type matcher func(s *S) E 17 18 func matchList(s *S) E { return matcher(matchAnyFn)(s) } 19 20 var foo = matcher(matchList) 21 22 var matchAny = matcher(matchList) // ERROR "initialization loop|depends upon itself" 23 24 func matchAnyFn(s *S) (err E) { return matchAny(s) }