7 func (T) Read(b []byte) (int, error) { return 0, nil }
8 func (T) something() string { return "non-exported method" }
22 case io.ReadCloser: // want `unreachable case clause: io\.Reader will always match before io\.ReadCloser`
23 println("io.ReadCloser")
29 case T: // want `unreachable case clause: io\.Reader will always match before CheckUnreachableTypeCases\.T`
36 case io.ReadCloser: // want `unreachable case clause: io\.Reader will always match before io\.ReadCloser`
37 println("io.ReadCloser")
38 case T: // want `unreachable case clause: io\.Reader will always match before CheckUnreachableTypeCases\.T`
45 case io.ReadCloser, T: // want `unreachable case clause: io\.Reader will always match before io\.ReadCloser`
46 println("io.ReadCloser or T")
50 case io.ReadCloser, io.Reader:
51 println("io.ReadCloser or io.Reader")
52 case T: // want `unreachable case clause: io\.Reader will always match before CheckUnreachableTypeCases\.T`
58 println("something else")
61 case T: // want `unreachable case clause: io\.Reader will always match before CheckUnreachableTypeCases\.T`
68 case U: // want `unreachable case clause: CheckUnreachableTypeCases\.V will always match before CheckUnreachableTypeCases\.U`
75 case V: // want `unreachable case clause: CheckUnreachableTypeCases\.U will always match before CheckUnreachableTypeCases\.V`
95 println("io.ReadCloser")
102 println("io.ReadCloser")