Commits

Slava Pestov committed 680688cbf58
AST: Cleanups for TypeBase::getSuperclass() First, enforce that the superclass of a class is an interface type. Previously, Swift classes used interface types but imported Objective-C generics used archetypes. When the superclass type is always an interface type, we can use the recently-added gatherAllSubstitutions() instead of rolling our own parent type walk. Also, this exposed an issue in name lookup where we would call getSuperclass() on a type whose parent was an unbound generic. This doesn't make sense, so generalize the existing check there.