Skip to content

Reporting Bugs

vadimcn edited this page Dec 6, 2020 · 9 revisions

Bug reporting guidelines

  • If the problem is related to core debugging functionality (e.g. erratic stepping), consider first trying to reproduce it with command-line LLDB. If it exhibits the same behavior, the problem is likely in LLDB itself, in which case I won't be able to do much about it (other than pulling in a newer version LLDB, where the problem had been fixed). Such cases would be better reported directly to LLDB developers.
    A notable exception to this is anything related to Rust support, as it is added on top of the baseline LLDB.
  • A verbose log is often useful in deciphering what had happened during the debugging session. Here's how to capture it:
    1. Add "lldb.verboseLogging":true to your workspace configuration,
    2. Reproduce the problem,
    3. Paste output from VSCode's Output/LLDB panel into the bug report.
  • Before hitting [Submit], please ask yourself whether you'd be able to reproduce the problem given the information you are about to submit. If not, the report likely won't be actionable without more details, so why not add them now?

LLDB Reproducers

Newer versions of LLDB have "Reproducers" facility that can automatically collect the relevant files and other information needed to reproduce a debugger problem. Here's to enable this in CodeLLDB:

  • Add "lldb.adapterEnv": { "LLDB_CAPTURE_REPRODUCER": "1" } to your workspace configuration.
  • Add "initCommands": ["script lldb.SBReproducer.SetAutoGenerate(True)", "reproducer status"] to your launch configuration.

After having reproduced the problem, please find in VSCode's debug console the name of the directory where the reproducer was generated (e.g."/tmp/reproducer-7e9c34"), compress its contents and attach to the bug report.

Clone this wiki locally