Mac OS 10.11.1 (15B42)
Xcode 7.2 (7C68)
The type protocol<A,B> should be treated as covariant with the type A since all types conforming to protocol<A,B> conform to A.
This works for function calling:
However, it does not work for protocol conformance. Given A and B above, I expect the following to compile, but it does not:
Similarly, I expect function return values to work as well, but this does not compile: