This doesn't fit with my mental model for how method lookup works. (In fact, I'm in the process of writing up a detailed RFC on this...). In my head, method lookup considers inherent methods + methods from some set of *traits*, not impls. So we have to define this in terms of the traits that are in scope.

Also, it is not exactly well-defined what type you are referring to -- e.g., in something like `&Rc<[Foo]>`, do you mean the builtin type `&`, the type `Rc`, the type `[...]`, the type `[Foo]`? I think we will need to find a more precise definition.