Support for Rust

Do codeclap already support or is planning to add support for other languages like Rust?

Edited by fpalacios on Reason: Initial post
fpalacios
Do codeclap already support or is planning to add support for other languages like Rust?


In general, as it is for most native debuggers, codeclap doesn't really care that much about the language that was used.
The important part is that the compiler outputs native x64 code and debug information in a compatible format (which is dwarf for Linux/macOS and either pdb/codeview or dwarf on Windows). Also the calling conventions has to be compatible for function calls to work in the expressions panel.

However in some cases high level languages may not be that comfortable to debug without support for specific structures or name mangling.
Since I always like to explore new possible test cases I will check out a few rust example over the week(end) and will report what I find.

Edited by spx on
That would be great! I've been on the look for a debugger like this, especially if it would work with rust at least with basic cases.
I've now tried quite a few examples from the rust docs (on Linux).
Unfortunately at the moment the binaries don't work that well with codeclap to the point that it is borderline unusable.

The good news is that most of the bad problems are not really specific to rust and are just very common in the output that I've encountered.
Probably the most annoying problem is that there is a lot of inlined code even for lines that look very basic. This is not handled that well at the moment and makes stepping on the source layer really annoying.

Specific to rust is that some data types like like strings and slices show up as a combination of data_ptr and length members. Once the more generic problems are fixed it is probably not too much work to add a pretty printer for the most common types but you will likely want to wait for 0.9.9/1.0 until it is worth to consider using codeclap for rust debugging.

Edited by spx on
That's a petty, I'll be watching if there's any progress with rust support in the future, for now i'll stick with rust-gdb.
Thank you anyway!