github.com/cockroachdb/tools@v0.0.0-20230222021103-a6d27438930d/go/ssa/interp/testdata/fixedbugs/issue52835.go (about)

     1  package main
     2  
     3  var called bool
     4  
     5  type I interface {
     6  	Foo()
     7  }
     8  
     9  type A struct{}
    10  
    11  func (a A) Foo() {
    12  	called = true
    13  }
    14  
    15  func lambda[X I]() func() func() {
    16  	return func() func() {
    17  		var x X
    18  		return x.Foo
    19  	}
    20  }
    21  
    22  func main() {
    23  	lambda[A]()()()
    24  	if !called {
    25  		panic(called)
    26  	}
    27  }