diff options
author | Josh Bleecher Snyder <josharian@gmail.com> | 2020-04-16 18:26:12 -0700 |
---|---|---|
committer | Josh Bleecher Snyder <josharian@gmail.com> | 2020-04-17 04:26:54 +0000 |
commit | 29d925dfcf7dc577e46d4557a5ef6eaa7f2a67af (patch) | |
tree | 584cf0786af8f520f52c2dc59015c745dc4d0ed6 /test | |
parent | 843453d09e1a4dc9631056e9e3f4199f87106a48 (diff) | |
download | go-git-29d925dfcf7dc577e46d4557a5ef6eaa7f2a67af.tar.gz |
test: add test for nil check / bounds check compiler confusion
This test started failing at CL 228106 and was fixed by CL 228677.
Fixes #38496
Change-Id: I2dadcd99227347e8d28179039f5f345e728c4595
Reviewed-on: https://go-review.googlesource.com/c/go/+/228698
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'test')
-rw-r--r-- | test/fixedbugs/issue38496.go | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/fixedbugs/issue38496.go b/test/fixedbugs/issue38496.go new file mode 100644 index 0000000000..717aa5d41d --- /dev/null +++ b/test/fixedbugs/issue38496.go @@ -0,0 +1,20 @@ +// run + +// Copyright 2020 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. + +// Make sure bounds check elision isn't confused with nil check elision. + +package main + +func main() { + defer func() { + err := recover() + if err == nil { + panic("failed to check nil ptr") + } + }() + var m [2]*int + _ = *m[1] // need a nil check, but not a bounds check +} |