-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Foundation/CoreFoundation: repair bridging for NSLocale
#2157
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
@swift-ci please test |
Testing will fail until the build fix is in. Please hold. |
Also: CFLocking.h isn't in the patch? |
Clearly I am unable to use git :-( |
@swift-ci please test |
5 similar comments
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci test |
@swift-ci please test |
4 similar comments
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
Ah, the Linux failure is due to the deployment target not being specified. |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
@swift-ci please test |
`NSLocale` is toll-free bridged to `CFLocale`. The types must match. On many targets, the backing store for `_lock` was being elided as the value was conditionally defined. Extract the locking macros/types into a `CFLocking.h` and then include that into `CFInternal.h` and `ForSwiftFoundationOnly.h`. This allows the underlying type information to be shared into Swift permitting the `__CFLocale` type to be reconstructed without guessing as to the underlying type. This repairs the bridging of `NSLocale` on Windows and allows us to get further in the test suite.
@swift-ci please test |
Ugh, seems that the Windows build is currently broken without this. I'm going to merge It to repair it, it passes the CI; we can address additional feedback in a follow up change, this largely is code-motion + the Swift side type layout fix for Windows. |
NSLocale
is toll-free bridged toCFLocale
. The types must match.On many targets, the backing store for
_lock
was being elided as thevalue was conditionally defined.
Extract the locking macros/types into a
CFLocking.h
and then includethat into
CFInternal.h
andForSwiftFoundationOnly.h
. This allowsthe underlying type information to be shared into Swift permitting the
__CFLocale
type to be reconstructed without guessing as to theunderlying type.
This repairs the bridging of
NSLocale
on Windows and allows us to getfurther in the test suite.