-
Notifications
You must be signed in to change notification settings - Fork 10.6k
[Explicit Module Builds] C++ Interoperability mode fixes #69706
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
e442ef3 to
3245aae
Compare
|
@swift-ci smoke test |
1 similar comment
|
@swift-ci smoke test |
|
@swift-ci test |
3245aae to
5a23c24
Compare
|
@swift-ci smoke test |
5a23c24 to
99f4457
Compare
99f4457 to
25e913a
Compare
|
@swift-ci test |
25e913a to
1df7e55
Compare
c90fe9f to
d5167fd
Compare
|
@swift-ci test |
2 similar comments
|
@swift-ci test |
|
@swift-ci test |
d5167fd to
33d6a13
Compare
|
@swift-ci test |
33d6a13 to
444a056
Compare
|
@swift-ci test |
444a056 to
7f9323d
Compare
60f3a2f to
7fa769b
Compare
|
@swift-ci test |
2 similar comments
|
@swift-ci test |
|
@swift-ci test |
7fa769b to
46dff8c
Compare
|
@swift-ci test |
46dff8c to
1b61dad
Compare
|
@swift-ci test |
2 similar comments
|
@swift-ci test |
|
@swift-ci test |
6561db0 to
90b2a72
Compare
|
@swift-ci test |
1 similar comment
|
@swift-ci test |
|
@egorzhdan ping for review. |
egorzhdan
left a comment
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.
Thanks @artemcm! I only have a few minor questions.
include/swift/DependencyScan/SerializedModuleDependencyCacheFormat.h
Outdated
Show resolved
Hide resolved
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.
Why is the disable-implicit-cxx-module-import flag required in this test?
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.
<unknown>:0: error: unexpected warning produced: module 'Cxx' was not compiled with library evolution support; using it means binary compatibility for 'test' can't be guaranteed
Because we import Cxx module when enabling interop, enabling library evolution has to mean disabling this implicit import.
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.
And because I don't know how to handle error messages without source-location with -verify I thought I'd just disable it.
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.
I've refactored the decision to implicit import Cxx into a new shouldImportCxx method and made it default to false for when Library Evolution is enabled.
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.
Ah, I see! Thanks for explaining
8d0525c to
a9c347c
Compare
…sub-invocations and dependency scanner
…bled. We cannot always rely on being able to do so only as an overlay query upon loading 'requires cplusplus' modulemap modules. The 'requires' statement only applies to submodules, and we may not be able to query language feature modulemap attributes in dependency scanning context.
a9c347c to
7c4b05f
Compare
…it-cxx-module-import`
7c4b05f to
ec4e0e2
Compare
|
@swift-ci test |
egorzhdan
left a comment
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.
LGTM!
No description provided.