-
-
Notifications
You must be signed in to change notification settings - Fork 268
OSX: LDC linked against regular LLVM won't show line numbers in stack trace #3280
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
Comments
I doubt they'll accept such a hack. The probably nicer proper solution would involve druntime being able to use the separate debuginfo (.dSYM) files generated by default (IIRC, something similar to .pdb files). |
Also, there are more things that only work with our LLVM fork, mainly cross-compiling to Android (another hack that surely won't be accepted) and |
Opened https://issues.dlang.org/show_bug.cgi?id=20510, since the proper solution seems to be in Druntime. Thanks!
Is Windows one of them ? |
With recent LLVM, it only affects those targets for which it's most useful - Windows/MSVC and WebAssembly. |
Fixed by #4291 |
…n backtraces. (#4291) * macOS debuginfo: add support for using `atos` to get file:line info in backtraces. Resolves issue #3864 * Return to LLVM default of emitting __debug_line section in __DWARF segment as a debug section (not regular) * Re-enable test now that issue #3280 is fixed. * Allow full path names in exception file:line debug output. * Allow full path names in exception file:line debug output. * Add changelog entry
On OSX, the linker strips
.debug_lines
, which makes the backtrace code in Druntime non-functional.LDC already has a workaround for this (here), however this workaround requires to compile against a modified version of LLVM.
So if one downloads the release from Github, things work correctly, but for Homebrew users (who build from source), line numbers aren't shown by default.
Is there any chance that the patch can be upstreamed so people linking against stock LLVM can benefit from it ?
The text was updated successfully, but these errors were encountered: