Commits

Doug Gregor committed ca2b2420613
Don't consider protocol types to be "always canonical". Technically, they are always canonical, but so are oneof/struct/class types, and we don't classify them as "always canonical" because we typically want to give them special semantics. Eliminates an embarrassing bug wherein we couldn't handle conversion of existentials. Swift SVN r5289