diff options
Diffstat (limited to 'gcc/testsuite/go.test/test/nilptr.go')
-rw-r--r-- | gcc/testsuite/go.test/test/nilptr.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/go.test/test/nilptr.go b/gcc/testsuite/go.test/test/nilptr.go index b784914e590..793e9967368 100644 --- a/gcc/testsuite/go.test/test/nilptr.go +++ b/gcc/testsuite/go.test/test/nilptr.go @@ -38,6 +38,8 @@ func main() { shouldPanic(p8) shouldPanic(p9) shouldPanic(p10) + shouldPanic(p11) + shouldPanic(p12) } func shouldPanic(f func()) { @@ -130,3 +132,23 @@ func p10() { var t *T println(t.i) // should crash } + +type T1 struct { + T +} + +type T2 struct { + *T1 +} + +func p11() { + t := &T2{} + p := &t.i + println(*p) +} + +// ADDR(DOT(IND(p))) needs a check also +func p12() { + var p *T = nil + println(*(&((*p).i))) +} |