You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
431 B
31 lines
431 B
7 months ago
|
// Copyright 2017 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 p
|
||
|
|
||
|
import q "./a"
|
||
|
|
||
|
type T struct {
|
||
|
X *q.P
|
||
|
}
|
||
|
|
||
|
func F(in, out *T) {
|
||
|
*out = *in
|
||
|
if in.X != nil {
|
||
|
in, out := &in.X, &out.X
|
||
|
if *in == nil {
|
||
|
*out = nil
|
||
|
} else {
|
||
|
*out = new(q.P)
|
||
|
**out = **in
|
||
|
}
|
||
|
}
|
||
|
return
|
||
|
}
|
||
|
|
||
|
//go:noinline
|
||
|
func G(x, y *T) {
|
||
|
F(x, y)
|
||
|
}
|