> On Mar 14, 2017, at 2:36 PM, Vincent Esche 
> <[email protected]> wrote:
> 
> Pardon my ignorance here, but shouldn’t `foo<T: Protocol>(t: T)` always 
> monomorphize due to being generic? Isn’t that how `T: …` differs from, say 
> `foo(t: Protocol)`?

The compiler ought to be able to monomorphize either signature, given that it 
can see the implementation of `foo`. If `foo` is a public function from another 
module, you can't see its implementation.

-Joe
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to