Initial commit: Go 1.23 release state
This commit is contained in:
63
test/fixedbugs/bug093.go
Normal file
63
test/fixedbugs/bug093.go
Normal file
@@ -0,0 +1,63 @@
|
||||
// run
|
||||
|
||||
// Copyright 2009 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
|
||||
|
||||
type S struct {
|
||||
}
|
||||
|
||||
func (p *S) M() {
|
||||
}
|
||||
|
||||
type I interface {
|
||||
M();
|
||||
}
|
||||
|
||||
func main() {
|
||||
var p *S = nil;
|
||||
var i I = p; // this should be possible even though p is nil: we still know the type
|
||||
i.M(); // should be possible since we know the type, and don't ever use the receiver
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
throw: ifaces2i: nil pointer
|
||||
SIGSEGV: segmentation violation
|
||||
Faulting address: 0x0
|
||||
pc: 0x1b7d
|
||||
|
||||
0x1b7d?zi
|
||||
throw(30409, 0, 0, ...)
|
||||
throw(0x76c9, 0x0, 0x0, ...)
|
||||
0x207f?zi
|
||||
sys·ifaces2i(31440, 0, 31480, ...)
|
||||
sys·ifaces2i(0x7ad0, 0x7af8, 0x0, ...)
|
||||
0x136f?zi
|
||||
main·main(1, 0, 1606416424, ...)
|
||||
main·main(0x1, 0x7fff5fbff828, 0x0, ...)
|
||||
|
||||
rax 0x1
|
||||
rbx 0x1
|
||||
rcx 0x33b5
|
||||
rdx 0x0
|
||||
rdi 0x1
|
||||
rsi 0x7684
|
||||
rbp 0x7684
|
||||
rsp 0xafb8
|
||||
r8 0x0
|
||||
r9 0x0
|
||||
r10 0x1002
|
||||
r11 0x206
|
||||
r12 0x0
|
||||
r13 0x0
|
||||
r14 0x7c48
|
||||
r15 0xa000
|
||||
rip 0x1b7d
|
||||
rflags 0x10202
|
||||
cs 0x27
|
||||
fs 0x10
|
||||
gs 0x48
|
||||
*/
|
||||
Reference in New Issue
Block a user