-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[Package CMO] Require library-evolution flag. #76278
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
f94f864
to
e77fca6
Compare
This PR ensures library-evolution is enabled for Package CMO; without it, it previously fell back to regular CMO, which caused mismatching serialization attributes if importing another module that had Package CMO enbaled, causing an assert fail for loadable types. Resolves rdar://135308288
e77fca6
to
66b504a
Compare
@swift-ci smoke test |
if (M.getSwiftModule()->isResilient() && | ||
!M.getSwiftModule()->serializePackageEnabled()) | ||
if (M.getSwiftModule()->serializePackageEnabled()) { | ||
assert(M.getSwiftModule()->isResilient() && |
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.
In addition to the assert, we should also return when M
is resilient.
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.
yup it's in the else if
line below
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.
oh, I see. Thank you!
Update tests
@swift-ci smoke test |
This PR ensures library-evolution is enabled for Package CMO; without it, it previously fell back to regular CMO, which caused mismatching serialization attributes if importing another module that had Package CMO enbaled, causing an assert fail for loadable types.
Resolves rdar://135308288&135276295