-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[5.0] statically map CF types in the ClangImporter #20840
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
Conversation
As per https://forums.swift.org/t/llp64-targets-and-integral-types/18253/15, define mappings for `CFTypeID`, `CFOptionFlags`, `CFHashCode` to `UInt` for LLP64 support.
@swift-ci please test |
This should be low risk. This doesn't change any thing in the ABI for Darwin (they should map over as they currently do), but will impact Windows x86_64 support. This ensures that the types are mapped correctly. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a cherry-pick of #20717. I agree with Saleem's analysis; in fact I'd go even further and say there's no effect on either source or binary compatibility for either Apple platforms or Linux.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Approved. Waiting for convergence to be over.
@swift-ci please test |
Build failed |
Linux failure is a nondeterministic Foundation XCTest segfault, which I've seen on other PRs. @millenomi, do you have a bug for this already? @swift-ci Please test Linux |
@swift5-branch-managers (@tkremenek) ping? |
@apple/swift5-branch-managers works |
@jrose-apple ... unfortunately, it doesn't work for me (you need to be part of the apple organization to do that since the alias is private) |
Oh, I didn't realize! |
As per https://forums.swift.org/t/llp64-targets-and-integral-types/18253/15, define mappings for
CFTypeID
,CFOptionFlags
,CFHashCode
toUInt
for LLP64 support.Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.
Resolves SR-NNNN.