// 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\)" | |
} |