swift
606ac145 - “Sanitize” requirements before checking inferred type witnesses.

Commit
8 years ago
“Sanitize” requirements before checking inferred type witnesses. When we check type inferred type witnesses against the requirement signature of the protocol, first "sanitize" the requirements to remap any dependent member types into the equivalent dependent member types within that protocol, dropping any requirements that can't be remapped. This eliminates some extraneous recursion introduced by checking requirements, and isolates us somewhat from the specific choice of "canonical" associated types.
Author
Committer
Parents
Loading