Skip to content

[PrintAsObjC] Look through "compatibility" typealiases #20027

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
Oct 25, 2018

Conversation

jrose-apple
Copy link
Contributor

These handle imported types that have been renamed in a later Swift version than the one being used; for consistency when deserializing from a swiftmodule, the latest name is always used. This is important because it might mean we can avoid importing the framework that a name comes from; a forward declaration might be sufficient if it's an ObjC class or protocol.

Fallout from #18941 (oops).

rdar://problem/45491607

These handle imported types that have been renamed in a /later/ Swift
version than the one being used; for consistency when deserializing
from a swiftmodule, the latest name is always used. This is important
because it might mean we can avoid importing the framework that a name
comes from; a forward declaration might be sufficient if it's an ObjC
class or protocol.

rdar://problem/45491607
@jrose-apple
Copy link
Contributor Author

@graydon, feel free to ask questions for reviewing purposes. I picked you mostly because you've done a little bit of Clang Importer stuff.

@jrose-apple
Copy link
Contributor Author

@swift-ci Please smoke test

@jrose-apple
Copy link
Contributor Author

@swift-ci Please test source compatibility

@jrose-apple jrose-apple merged commit e34a6a1 into swiftlang:master Oct 25, 2018
@jrose-apple jrose-apple deleted the compatibly-yours branch October 25, 2018 15:26
jrose-apple added a commit to jrose-apple/swift that referenced this pull request Oct 25, 2018
These handle imported types that have been renamed in a /later/ Swift
version than the one being used; for consistency when deserializing
from a swiftmodule, the latest name is always used. This is important
because it might mean we can avoid importing the framework that a name
comes from; a forward declaration might be sufficient if it's an ObjC
class or protocol.

rdar://problem/45491607
(cherry picked from commit e34a6a1)
jrose-apple added a commit that referenced this pull request Oct 25, 2018
These handle imported types that have been renamed in a /later/ Swift
version than the one being used; for consistency when deserializing
from a swiftmodule, the latest name is always used. This is important
because it might mean we can avoid importing the framework that a name
comes from; a forward declaration might be sufficient if it's an ObjC
class or protocol.

rdar://problem/45491607
(cherry picked from commit e34a6a1)
davidungar pushed a commit to davidungar/swift that referenced this pull request Oct 26, 2018
These handle imported types that have been renamed in a /later/ Swift
version than the one being used; for consistency when deserializing
from a swiftmodule, the latest name is always used. This is important
because it might mean we can avoid importing the framework that a name
comes from; a forward declaration might be sufficient if it's an ObjC
class or protocol.

rdar://problem/45491607
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