go/test/fixedbugs/issue21934.go
Cuong Manh Le 047141797c cmd/compile: lookup methods of base type for named pointer type
Passed toolstash-check.

Updates #21738
Fixes #21934

Change-Id: I59f0b2c9890146565ff913b04aeeeff7dc7a4499
Reviewed-on: https://go-review.googlesource.com/c/go/+/197561
Run-TryBot: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2019-10-04 18:34:18 +00:00

27 lines
541 B
Go

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