-
Notifications
You must be signed in to change notification settings - Fork 13.3k
LLDB source location resolution failse since nightly 2022-01-28 #93624
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 suspect this is almost certainly from #93081 which includes rust-lang/llvm-project@2abffbf. cc @nikic |
@RagibHasin what version of LLDB are you using on Windows. I'm unable to get it to work with stable or nightly (hitting "Unable to resolve breakpoint to any actual locations"). |
@arlosi Regular LLDB bundled with LLVM cannot read Rust debug info, as far as I investigated. I actually faced breakpoint not loading with CodeLLDB first and then upon trying with their bundled LLDB, verified the problem. |
So the LLDB included with CodeLLDB has been specially patched to recognize Masm (the previous language identifier) as potentially Rust code. That's what the vanilla LLDB doesn't work before or after, and the CodeLLDB does. Here's the commit that makes it work in CodeLLDB's LLVM fork: vadimcn/llvm-project@4aba5a4 I've submitted a patch to LLDB to get it working in the latest LLDB: https://reviews.llvm.org/D119044 I created an issue on the CodeLLDB GitHub as well vadimcn/codelldb#633 (cc @vadimcn) to get a fix in the patched version over there. Since VSCode extensions can be quickly updated, assuming we can get a patched version out soon, I don't think we need to revert the change. |
Thank you very much @arlosi . I actually wasn't sure if it is an issue of Rust itself or LLDB/CodeLLDB. So, decided to raise it here. Hope it resolves soon. |
I seem to be experiencing this now in the 1.59 stable release and not the 1.60 nightly. The issues seems to express just as is detailed here: and here: A rebuild on a version as late as 1.58.1 stable fixes the issue. Bit new to GitHub so if you need more detail I would be happy to supply it. |
I also have this issue on 1.59. |
This ended up getting (unintentionally) backported to the 1.59.0 stable release along with another unrelated LLVM change. More details are available over on the CodeLLDB page here: vadimcn/codelldb#633 (comment) We need to get a new release of the CodeLLDB extension to fix it. Until a new CodeLLDB is available the options are:
|
Thank you kindly for taking the time to note this - have a good one! |
@arlosi is there any instruction about how to compile Rust-enabled LLDB somewhere? It seems that I cannot find it. Some pointers would be very helpful, for me and for future reference also, I think. |
I think this is worth making a new 1.59.x release to fix. Discovering what's going wrong is not easy. I was trying to debug Rust code on a new computer, and I assumed I was doing something wrong. I was starting to doubt my sanity until I tried debugging a Rust program on an older computer (where I had 1.57 installed) and it worked. |
There's a prerelease version of CodeLLDB that has a fix for this: vadimcn/codelldb#633 (comment) You can download the appropriate .vsix file, and install it in VSCode: Please report any feedback / issues over on the CodeLLDB thread. Hopefully we have a new official release soon. |
I wish the release train had some standardized automated tests to check this output. Losing my debugging capability without warning is painful. Guess I'll go back to 1.58 for the time being. |
CodeLLDB has released an updated version (1.7.0) that fixes the issue. This can be closed. |
Yes. Thanks, everyone, for keeping Rust running smoothly. |
LLDB on Windows is unable to resolve breakpoint to any actual locations since nightly 2022-01-28 build which is working fine with the previous nightly.
Code
I tried this code:
I expected to see this happen:
Instead, this happened:
Version it worked on
It most recently worked on: Rust nightly-2022-01-27
rustc --version --verbose
:Version with regression
It regressed on: Rust nightly-2022-01-28
rustc --version --verbose
:Backtrace
Not applicable.
Regressed between two nightlies (
2022-01-27
and2022-01-28
) after Rust 1.58.1The text was updated successfully, but these errors were encountered: