Skip to content

[stdlib] Add Collection constraints via protocol where clauses #9374

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 7, 2017

Conversation

airspeedswift
Copy link
Member

@airspeedswift airspeedswift commented May 7, 2017

Adds constraints requiring Indices and SubSequence match the traversal.

Resolves ABI FIXMEs 47, 48, 93, 95, 101, 102, 103, 181

@airspeedswift
Copy link
Member Author

@swift-ci please test

@DougGregor
Copy link
Member

Very nice!

@airspeedswift
Copy link
Member Author

@swift-ci please test source compatibility

@airspeedswift airspeedswift merged commit f6f3ed0 into swiftlang:master May 7, 2017
@airspeedswift airspeedswift deleted the begone-where-clauses branch May 7, 2017 15:55
airspeedswift added a commit to airspeedswift/swift that referenced this pull request May 8, 2017
airspeedswift added a commit that referenced this pull request May 9, 2017
* Add Collection constraints via protocol where clauses (#9374)

* Merge pull request #9379 from airspeedswift/redundant-where
@DougGregor
Copy link
Member

@xedin found that this was the cause of the compile-time slowdowns we've seen recently. Something in the GenericSignatureBuilder is at fault, but we should consider reverting while I look into the problem

@DougGregor
Copy link
Member

Well, @xedin also found #9275 caused some slowdown in this area, too.

@airspeedswift
Copy link
Member Author

Might #8990 have trouble too?

@DougGregor
Copy link
Member

I don't know. I'm going to look into the GSB to see if it's doing something phenomenally foolish that's easy to address.

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.

2 participants