compiletest: Less special handling of debugger/test discovery in debuginfo mode #134673
Labels
A-compiletest
Area: The compiletest test runner
A-debuginfo
Area: Debugging information in compiled programs (DWARF, PDB, etc.)
C-cleanup
Category: PRs that clean code up or issues documenting cleanup.
T-bootstrap
Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Currently there is special code in compiletest that detects
Mode::DebugInfo
and responds by creating three different clones of the compiletest config, each configured to use one of cdb/gdb/lldb if the corresponding debugger can be found.This complicates config handling and test discovery in the top-level parts of compiletest, because parts of the code need to be aware of multiple configs just to handle this one use-case.
In principle, debugger discovery and selection should be handled out in bootstrap, which then invokes compiletest up to three times, with each invocation explicitly specifying a debugger path and debugger kind. This is somewhat analogous to how
x test coverage
invokes compiletest twice on the same directory with two different modes, though in this case it would instead be the same directory and mode with different debugger settings.(Given bootstrap's own maintenance headaches, whether this would be a net improvement in the short-term is an open question.)
The text was updated successfully, but these errors were encountered: