Commits

Doug Gregor committed abf73d3bee1
[Name lookup] Use the overload signature's type for shadowing of var/subscript decls. For historical reasons, the "name shadowing" computation is only looking at the type---not even the interface type!---of declarations. For variables and subscripts, this means that the context (e.g., a constrained extension) wasn't been considered at all, leading to declarations from other imported modules being ignored. Patch up a little bit of this by using the overload signature's type for variables and subscripts, because I need it for ErrorProtocol's default implementations. Longer-term, we should be using the overload signature (or something very like it) for shadowing, consistently.