// errorcheck // Copyright 2019 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. // selector expression resolves incorrectly for defined // pointer types. package main type E struct{ f int } type T struct{ E } func (*T) f() int { return 0 } type P *T type PP **T func main() { var x P _ = x.f // ERROR "x\.f undefined \(type P has no field or method f\)" var y PP _ = y.f // ERROR "y\.f undefined \(type PP has no field or method f\)" }