-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Adapt for the mangling prefix change ($S -> $s) #1699
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
Please test with following pull request: @swift-ci smoke test Linux platform |
Please test with following pull request: @swift-ci test Linux platform |
Can you test this manually on macOS to make sure we don't break our developers there? The CI doesn't do it. |
Last time this mangling changed it really messed us up for a while since everyone had to have ToT tools installed. |
@parkera What test should I run? |
You can run all the unit tests (I hope) on macOS using the Xcode workspace. |
I assume in order for this to work you need to install a toolchain based on your compiler PR? |
yeah, this change has to be in sync with the compiler mangling change |
OK, I did run the tests locally by setting SWIFT_EXEC and SWIFT_LIBRARY_PATH to my ToT compiler build. How can we proceed with that? |
@eeckstein The compiler error (related to |
ok thanks. Are you ok with this change (which means you guys have to work with a ToT compiler/toolchain for a while)? |
I know we need to do this, but is there any way we can detect which version of the compiler we're building with to continue to support shipped tools? Not to overstate it, but it introduces a barrier to contributions which is difficult for some people to get past. |
What you can do is to add a pre-build configuration step. For example:
using the swift-demangle from the toolchain. And then include config.h in CFInternal.h Or maybe you can just define a build setting outside the Xcode project and then conditionally compile the macro definition in CFInternal.h. A little bit more manual, but simpler. |
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.
Marking as requesting changes while we figure out how to preserve some manner of compatibility for our contributors while still making forward progress on mangling change.
dbecb91
to
cfca892
Compare
@parkera I added a workaround which enables to compile with both compiler versions (old and new mangling prefix) |
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.
Great!
Please test with following pull request: @swift-ci test Linux platform |
1 similar comment
Please test with following pull request: @swift-ci test Linux platform |
Please test with following pull request: @swift-ci clean test Linux platform |
2 similar comments
Please test with following pull request: @swift-ci clean test Linux platform |
Please test with following pull request: @swift-ci clean test Linux platform |
Please test with following pull request: @swift-ci test Linux platform |
1 similar comment
Please test with following pull request: @swift-ci test Linux platform |
No description provided.