Commits

Doug Gregor committed f7dacd096b2
Don't force implied protocol conformances into the current DeclContext. When we check a protocol conformance, we recurse to check the implied protocol conformances for inherited protocols first. When doing so, we were passing down the current DeclContext, which would force the creation of a new conformance to that protocol within that DeclContext. This isn't what we want: we want to find or create the conformance in whichever context it naturally belongs. This is a partial step toward solving the problem, which eliminates the duplicate witness tables from the example in rdar://problem/18182969. However, we're still not using the conformance lookup table to decide where the witness tables/protocol conformances go, which means the actual declaration context for a witness table is still a bit ad hoc. Baby steps. Swift SVN r26129