Commits

Chris Willmore committed 5b51620d1de
Be more tolerant of invalid protocol conformances when applying constraint solution. * Lift NormalProtocolConformance::hasTypeWitness() to ProtocolConformance. This method can be used to determine whether a potentially invalid conformance has a particular type witness. * ProtocolConformance::getWitness() may return nullptr if the witness does not exist. * In TypeChecker::getWitnessType(), don't complain that a builtin protocol is broken if it's the conformance that's broken. * ConformanceChecker should only emit diagnostics from within calls to checkConformance(). * TypeChecker::conformsToProtocol() now returns true if the type has a declared conformance to the protocol, regardless of whether the conformance is valid. Clients must check the validity of the ProtocolConformance themselves if necessary. <rdar://problem/19495341> Can't upcast to parent types of type constraints without forcing Swift SVN r25326