mirror of
https://github.com/golang/go
synced 2024-11-22 21:10:03 -07:00
32 lines
606 B
Go
32 lines
606 B
Go
|
// 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 y
|
||
|
|
||
|
import "./x"
|
||
|
|
||
|
func f() {
|
||
|
ok := new(x.T);
|
||
|
var ok1 x.T;
|
||
|
ok2 := &ok1;
|
||
|
ok3 := &x.T{};
|
||
|
ok4 := &x.T{Y:2};
|
||
|
_ = x.T{};
|
||
|
_ = x.T{Y:2};
|
||
|
|
||
|
ok1.M(); // ERROR "assignment.*T"
|
||
|
bad1 := *ok; // ERROR "assignment.*T"
|
||
|
bad2 := ok1; // ERROR "assignment.*T"
|
||
|
*ok4 = ok1; // ERROR "assignment.*T"
|
||
|
*ok4 = *ok2; // ERROR "assignment.*T"
|
||
|
ok1 = *ok4; // ERROR "assignment.*T"
|
||
|
_ = bad1;
|
||
|
_ = bad2;
|
||
|
_ = ok4;
|
||
|
_ = ok3;
|
||
|
_ = ok2;
|
||
|
_ = ok1;
|
||
|
_ = ok;
|
||
|
}
|