blob: 3b977e54401e4f00e022d8dd86e915824f04aeb8 [file] [log] [blame] [edit]
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