Files
go-legacy-win7/test/fixedbugs/issue68816.go
Vorapol Rinsatitnon bf266cebe6 Update to go1.24.0
2025-02-14 12:42:07 +07:00

42 lines
566 B
Go

// run
// Copyright 2024 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
func main() {
mustPanic(func() {
f1(1)
})
f2(1, 0) // must not panic
mustPanic(func() {
f2(1, 2)
})
}
var v []func()
//go:noinline
func f1(i int) {
v = make([]func(), -2|i)
}
//go:noinline
func f2(i, j int) {
if j > 0 {
v = make([]func(), -2|i)
}
}
func mustPanic(f func()) {
defer func() {
r := recover()
if r == nil {
panic("didn't panic")
}
}()
f()
}