Skip to content
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

Keep more ParenType parameter flags when canonicalizing function types #17369

Merged
merged 1 commit into from Jun 20, 2018

Conversation

jrose-apple
Copy link
Contributor

@jrose-apple jrose-apple commented Jun 20, 2018

This will also preserve @escaping and @autoclosure, which were previously dropped. This could lead to mismatches between expected and actual canonical types for serialization cross-references.

SR-8045 / rdar://40984769, likely others

@jrose-apple jrose-apple requested a review from CodaFi June 20, 2018 19:05
@jrose-apple
Copy link
Contributor Author

@swift-ci Please test

@jrose-apple
Copy link
Contributor Author

@swift-ci Please test source compatibility

@CodaFi
Copy link
Member

CodaFi commented Jun 20, 2018

The escaping-ness of a parameter doesn't seem like a very useful piece of data to have around anyways given that you can form function types in non-parameter position with the escaping bit set inside of them

func church<A>(_ x : Int) -> (@escaping (A) -> A) -> (A) -> A { //... }

@jrose-apple
Copy link
Contributor Author

I'll admit I don't exactly know what the end-game looks like here, and that my understanding is that this is mostly just a way to get from TupleTypeRepr to AnyFunctionType. For now, though, I just want something that'll fix the 4.2 issue.

@swift-ci
Copy link
Collaborator

Build failed
Swift Test Linux Platform
Git Sha - 34611fca2868d5c596b6057f1f71229c481eda56

@jrose-apple
Copy link
Contributor Author

Yay for case sensitivity! My bad.

This will also preserve @escaping and @autoclosure, which were previously
dropped. This could lead to mismatches between expected and actual
canonical types for serialization cross-references.

https://bugs.swift.org/browse/SR-8045, likely others
@jrose-apple
Copy link
Contributor Author

Source compat tests

@jrose-apple
Copy link
Contributor Author

@swift-ci Please test Linux

@jrose-apple
Copy link
Contributor Author

@swift-ci Please smoke test macOS

@swift-ci
Copy link
Collaborator

Build failed
Swift Test Linux Platform
Git Sha - 34611fca2868d5c596b6057f1f71229c481eda56

@jrose-apple jrose-apple merged commit 8abaaea into apple:master Jun 20, 2018
@jrose-apple jrose-apple deleted the flag-day branch June 20, 2018 23:36
jrose-apple added a commit to jrose-apple/swift that referenced this pull request Jun 20, 2018
apple#17369)

This will also preserve @escaping and @autoclosure, which were previously
dropped. This could lead to mismatches between expected and actual
canonical types for serialization cross-references.

https://bugs.swift.org/browse/SR-8045, likely others
(cherry picked from commit 8abaaea)
jrose-apple added a commit that referenced this pull request Jun 21, 2018
#17369) (#17380)

This will also preserve @escaping and @autoclosure, which were previously
dropped. This could lead to mismatches between expected and actual
canonical types for serialization cross-references.

https://bugs.swift.org/browse/SR-8045, likely others
(cherry picked from commit 8abaaea)
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.

None yet

3 participants