Commits

Doug Gregor committed 45a8e790214
[Constraint solver] Properly find and substitute deduced associated types. Normal type lookup would find and substitute deduced associated types appropriately, but the constraint solver's handling of member references failed to account for them. Make sure we handle them now, fixing <rdar://problem/14638725>. The bulk of this change actually fixes the type vs. value member confusion within the solver. Previously, our notion of an overload choice lost track of whether we were looking for a type vs. a value. This meant that we would end up getting metatypes when in fact we expected types, and we had a few workarounds in the solver and in the protocol conformance checker to work around that bug. Track that we're looking for a type in OverloadChoice, so we can propagate that information. Consequently, eliminate all of the hackarounds involving metatypes that shouldn't be metatypes. Swift SVN r7009