Commit Graph

102 Commits

Author SHA1 Message Date
Ted Kremenek
fad874708e Adjust test cases.
Swift SVN r17964
2014-05-12 22:01:52 +00:00
Doug Gregor
28cc919fb4 Infer conformance requirements from the signature of a generic function.
When a specialization of a generic type occurs within the signature of
a generic function, it implies that the generic arguments meet the
requirements of the generic type. For example, in

  func printHashes<K, V>(dict : Dictionary<K, V>) {
    for (k, v) in dict {
        print("\(k.hashValue())\n")
    } 
  } 

the presence of Dictionary<K, V> in the signature implies that K and V
meet the requirements on Dictionary's generic parameters, i.e., that K
is Hashable. Thus, infer that K is Hashable in printHashes().

Fixes the easy part of <rdar://problem/14691708>. Same-type and
superclass requirements are more interesting.


<rdar://problem/14691708>


Swift SVN r7574
2013-08-26 16:46:38 +00:00