Commits

Eli Friedman committed d85f426693e
Initial implementation of static functions on protocols. <rdar://problem/11448251>. There are currently two places where you can use a static function defined on a protocol: on an object with the type of the protocol (discarding the base), and on an archetype in a generic function. The AST for the protocol object case is probably okay; the AST for the generic case is almost certainly wrong, but that whole area isn't really stable at the moment anyway. The proposal in rdar://problem/11448251 will add a third way: operators on protocols will be found by overload resolution. (Having static functions on protocols opens up the possibility of metaprotocols, but I don't think I need to worry about that for the moment.) Swift SVN r2211