// errorcheck

// Copyright 2015 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.

// Test that fields hide promoted methods.
// https://golang.org/issue/4365

package main

type T interface {
        M()
}

type M struct{}

func (M) M() {}

type Foo struct {
        M
}

func main() {
        var v T = Foo{} // ERROR "has no methods|not a method|cannot use"
        _ = v
}