diff options
Diffstat (limited to '')
-rw-r--r-- | test/fixedbugs/issue23734.go | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/fixedbugs/issue23734.go b/test/fixedbugs/issue23734.go new file mode 100644 index 0000000..dd5869b --- /dev/null +++ b/test/fixedbugs/issue23734.go @@ -0,0 +1,32 @@ +// run + +// Copyright 2018 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() { + m := map[interface{}]int{} + k := []int{} + + mustPanic(func() { + _ = m[k] + }) + mustPanic(func() { + _, _ = m[k] + }) + mustPanic(func() { + delete(m, k) + }) +} + +func mustPanic(f func()) { + defer func() { + r := recover() + if r == nil { + panic("didn't panic") + } + }() + f() +} |