// 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; }