Commits

Joe Groff committed 844465d9b92
Resolve and type-check OneOfElementPatterns. If we see '.Foo' or '.Foo(...)' in a case, resolve it as a OneOfElementPattern with element to be determined at type-checking time. If we see 'A.B' or 'A.B(...)', try to resolve 'A.B' as a qualified reference to a OneOfElementDecl, and resolve the expression as a OneOfElementPattern referencing that decl if we find one. During type-checking, resolve the element decl for unresolved OneOfElementPatterns, then match the subpattern to the type of the element's associated data (or void if it has none). A few cases don't yet work right that ought to: - Qualified references to generic oneof cases with generic arguments elided, e.g. 'case Optional.None:' - Qualified references to generic oneof cases through a module, e.g. 'case swift.Optional<Int>.None:' Swift SVN r6278