Would you mind going into a bit more detail on what sort of problems an unknown language could cause? I'd like to understand the issue before jumping in to fix anything. AFAIK, in the case of DWARF symbols, debug info for unknown languages is still used, so it wouldn't be the first for LLDB...
Also, the second fragment <https://github.com/llvm-mirror/llvm/blob/baa88cf6cb85d4256bb0f806e1b4dc87b29ea98e/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp#L104> checks for specific file extensions, which is an unreliable method, IMO, since there's more extensions in use for c++ alone. Code could also be generated by a template engine, which will probably use a different extension, etc. I'd rather not just hardcode '.rs' for Rust. I was hoping Aaron could commend on why this is necessary (i.e. why not just trust the language flag?) Thanks! On Mon, Aug 20, 2018 at 7:35 PM Zachary Turner <ztur...@google.com> wrote: > Various parts of lldb require knowing the source language. It’s possible > that things will mostly work if you report that the language is c++, but > you’ll probably get errors in other areas. It goes all the way down to the > CodeView level, where certain cv records indicate the original source > language. Can you check cvconst.h (ships with DIA SDK) and look for the > enumeration corresponding to source language? Does it have a value for > Rust? I’m guessing it doesn’t. When you generate PDBs for Rust you probably > need to put something unique value there, then we could properly set the > language in lldb > On Mon, Aug 20, 2018 at 7:15 PM Vadim Chugunov <vadi...@gmail.com> wrote: > >> Hi! >> I've been investigating why LLDB refuses to set breakpoints in Rust >> source files when using PDB debug info on Windows... This seems to stem >> from a couple of checks here >> <https://github.com/llvm-mirror/lldb/blob/f6f930a3608daf81441d3c9051fd9cff84eb6d58/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp#L1509> >> and here >> <https://github.com/llvm-mirror/llvm/blob/baa88cf6cb85d4256bb0f806e1b4dc87b29ea98e/lib/DebugInfo/PDB/PDBSymbolCompiland.cpp#L104>. >> >> I am wondering, what is the backstory there? Are those still necessary? >> I tried disabling them and Rust debugging worked just fine... >> >>
_______________________________________________ lldb-dev mailing list lldb-dev@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev