go test -bench=Foo -cpuprofile=default.pgo go test -bench=Foo -pgo=default.pgo ! stdout 'FAIL' -- main_test.go -- package main import ( "testing" ) var a int func save(x int) { a = x } func foo() { for i := range yield1 { defer save(i) } } func yield1(yield func(int) bool) { yield(1) } func BenchmarkFoo(b *testing.B) { for i := 0; i < b.N; i++ { foo() } if a != 1 { b.Fatalf("a = %d; want 1", a) } } -- go.mod -- module demo go 1.24