// run | |
package main | |
import ( | |
"fmt" | |
"strings" | |
) | |
func main() { | |
defer func() { | |
err := recover() | |
txt := fmt.Sprintf("%s", err) | |
if !strings.HasSuffix(txt, "with length 1") { | |
panic("bad error: " + txt) | |
} | |
}() | |
foo([]uint64{0}) | |
} | |
//go:noinline | |
func foo(haystack []uint64) { | |
for n := range len(haystack) { | |
_ = n | |
_ = haystack[1] | |
} | |
xxx := haystack[0:len(haystack)] | |
sink(xxx) | |
} | |
//go:noinline | |
func sink([]uint64) {} |