Commits

Slava Pestov committed bb6521b9b62
Sema: Improve a circularity-breaking hack The old check was problematic because it would sometimes return ErrorType from accessing the generic parameters of a type that was in the process of having its generic signature validated. Instead fix the root cause of the circularity, which was recursion through resolveType() when resolving a type's inheritance clause. To fix it, let's just not walk adopted protocols when looking up the superclass of a class. Inheriting from an associated type does not seem very useful, and will probably be hard to get right in the general case. I wasn't able to reduce a useful test case, but this patch prevents compiler_crashers regressions with some other changes I'm working on.