-
Notifications
You must be signed in to change notification settings - Fork 351
[lldb] Restore Swift IsSymbolARuntimeThunk override #2917
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
[lldb] Restore Swift IsSymbolARuntimeThunk override #2917
Conversation
|
TODO:
|
1a658f8 to
47d7569
Compare
|
@swift-ci 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.
Looks right to me.
|
I added a test by exposing |
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 would rather avoid adding swift specific API's to SBFrame. The notion of a "language runtime thunk" is not swift specific. For instance C++ often uses a thunk to go from the allocating to the non-allocating constructor (or vice versa???). So this should just be IsRuntimeThunk. Or maybe IsLanguageThunk? You don't need to supply the language, since you can get that from the frame.
|
@jimingham I agree. In this change I am exposing IsSwiftThunk in Python. The actual |
|
@swift-ci test |
Oh, that's so sad. But I still think there's no reason to expose the wrong API to Python. IsLanguageThunk is pretty trivial, since you just get the language runtime from the frame and call IsThunk on that. We should add that to the SB API's if it isn't there already, and expose that one to Python. |
|
I will add the new API, but won't be able to remove the old API that's still in use by clients, so the new API will currently be used only by the tests. But that has an issue I don't like much – we could unknowingly break the old API and wouldn't have tests to catch it. I feel like that defeats the primary purpose of adding these tests originally. I have a client question that I'll ask out of band. If we can migrate clients to a new API in the near term, then I'm not worried about covering the old API with a test. |
This reverts commit dce0d46.
|
I have reverted the commit that added the test. What remains is the restoration of In a follow up PR I'll add |
|
@swift-ci 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.
Thanks!!
Since we established that the old API didn't actually work, it may not be too bad to remove it and maybe force people to upgrade to the new one? It's not something we usually do and it might cause link errors, but maybe it's worth it? |
|
@adrian-prantl Yes I think we can remove this one after migrating. I think there's only one client. |
The swift override of
IsSymbolARuntimeThunkwas unintentionally removed in #536. This restores it.rdar://65681037