Commits

Doug Gregor committed 3658d8b9228
Teach the constraint checker that it's okay to pick a type involving type variables as a bound. Among other things, this change allows us to type-check uses of array literals passed to generic functions. From Joe's pre-existing test for this feature: class List<T> /*: ArrayLiteralConvertible*/ { typealias Element = T static func convertFromArrayLiteral(xs:T...) -> List<T> {} } func useList<T>(l:List<T>) {} useList([1,2,3]) // T=Int useList([1.0,2,3]) // T=Double Swift SVN r4131