-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Update swift-demangle to interactively demangle #4412
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
Update swift-demangle to interactively demangle #4412
Conversation
ssize_t ReadBytes; | ||
|
||
Buffer.reserve(Buffer.size() + ChunkSize); | ||
ReadBytes = read(STDIN_FILENO, Buffer.end(), ChunkSize); |
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'm concerned about breaking a symbol across chunk boundaries. Can we do something line-oriented instead? (I don't think we care about running this tool across binary data.)
Thanks, Keith! Hm, is there any way to write a test for this? |
Thanks for the feedback Jordan! I've pushed a |
This implementation looks good. I think we already have tests for stdin-demangling in test/Demangle/; what I really wanted to know is if there's a way to test that it's streaming now. I can't think of a good way without building a whole wrapper script, though—which would be nice, but I wouldn't block the patch over it. I think it's okay to drop this extra test file and just move ahead. |
This changes the swift-demangle interactive STDIN mode to immediately print the demangled symbol on return as opposed to printing them all at the end.
Ah sorry about that. I looked in that directory but assumed tests would be named after the CLI. I'll remove those here! |
Updated |
@swift-ci Please smoke test |
1 similar comment
@swift-ci Please smoke test |
@swift-ci Please smoke test OS X |
Merged. Thanks, Keith! |
Thanks! Should we close https://bugs.swift.org/browse/SR-2410 ? |
Yes, please. |
What's in this pull request?
This updates
swift-demangle
's interactive stdin mode to immediately output demangled strings as opposed to waiting until ctrl-d is pressed.Resolved bug number: (SR-2410)
Before merging this pull request to apple/swift repository:
Triggering Swift CI
The swift-ci is triggered by writing a comment on this PR addressed to the GitHub user @swift-ci. Different tests will run depending on the specific comment that you use. The currently available comments are:
Smoke Testing
A smoke test on macOS does the following:
device standard libraries are not built.
version of these tests are not run.
A smoke test on Linux does the following:
tests are not run.
Validation Testing
Lint Testing
Note: Only members of the Apple organization can trigger swift-ci.
This changes the swift-demangle interactive STDIN mode to immediately
print the demangled symbol on return as opposed to printing them all at
the end.