close
Skip to content

[SE-0157] Make *Collection.SubSequence conform to corresponding *Collection#11899

Closed
DougGregor wants to merge 4 commits intoswiftlang:masterfrom
DougGregor:subsequence-collection
Closed

[SE-0157] Make *Collection.SubSequence conform to corresponding *Collection#11899
DougGregor wants to merge 4 commits intoswiftlang:masterfrom
DougGregor:subsequence-collection

Conversation

@DougGregor
Copy link
Copy Markdown
Member

Introduce (recursive) constraints that make the *Collection constraint
of SubSequence match that of its enclosing *Collection, e.g.,
MutableCollection.SubSequence conforms to MutableCollection.

Fixes rdar://problem/20715031 and more of SR-3453.

When setting the signature conformances in a NormalProtocolConformance,
do so progressively rather than waiting until all of them are computed.
This allows later requirements to refer to earlier conformances.
…ection.

Introduce (recursive) constraints that make the *Collection constraint
of SubSequence match that of its enclosing *Collection, e.g.,
MutableCollection.SubSequence conforms to MutableCollection.

Fixes rdar://problem/20715031 and more of SR-3453.
@DougGregor
Copy link
Copy Markdown
Member Author

@swift-ci please smoke test

@DougGregor
Copy link
Copy Markdown
Member Author

@swift-ci please test source compatibility

@DougGregor
Copy link
Copy Markdown
Member Author

Also covers rdar://problem/22671948 and rdar://problem/28330668

@DougGregor
Copy link
Copy Markdown
Member Author

I'm going to collect all of the standard library changes for SE-0157: Recursive Protocol Constraints in a single PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant