Initial commit: Go 1.23 release state
This commit is contained in:
43
test/fixedbugs/issue9537.dir/b.go
Normal file
43
test/fixedbugs/issue9537.dir/b.go
Normal file
@@ -0,0 +1,43 @@
|
||||
// Copyright 2015 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
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
|
||||
"./a"
|
||||
)
|
||||
|
||||
type X struct {
|
||||
*a.X
|
||||
}
|
||||
|
||||
type Intf interface {
|
||||
Get() []byte
|
||||
RetPtr(int) *int
|
||||
RetRPtr(int) (int, *int)
|
||||
}
|
||||
|
||||
func main() {
|
||||
x := &a.X{T: [32]byte{1, 2, 3, 4}}
|
||||
var ix Intf = X{x}
|
||||
t1 := ix.Get()
|
||||
t2 := x.Get()
|
||||
if !bytes.Equal(t1, t2) {
|
||||
panic(t1)
|
||||
}
|
||||
|
||||
p1 := ix.RetPtr(5)
|
||||
p2 := x.RetPtr(7)
|
||||
if *p1 != 6 || *p2 != 8 {
|
||||
panic(*p1)
|
||||
}
|
||||
|
||||
r1, r2 := ix.RetRPtr(10)
|
||||
r3, r4 := x.RetRPtr(13)
|
||||
if r1 != 11 || *r2 != 11 || r3 != 14 || *r4 != 14 {
|
||||
panic("bad RetRPtr")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user