The Wire · Showcase
DEBUGGER DISCOVERY NOW OPT-IN, CODEGEN BUG FIXED
By RepoJournal · Filed · About Rust
GDB and LLDB no longer auto-discover in bootstrap, forcing developers to explicitly configure debuggers or skip debuginfo tests entirely.
The compiler's bootstrap system flipped a critical default: GDB and LLDB debugging is no longer automatically detected [1]. Developers must now opt in using `build.gdb/lldb = "discover"` to run debuginfo tests, though CDB on Windows remains auto-detected [2]. This is a behavioral shift that will surface in CI pipelines and local test runs. In parallel, the codegen layer fixed a latent crash where functions returning entirely-uninitialized values like `MaybeUninit::uninit()` would ICE when hitting the `PassMode::Direct | PassMode::Pair` branch [3]. The bug was introduced when `OperandValue::Uninit` landed to optimize away uninit constant stores but missed one critical path [4]. Over in Enzyme (the autodiff compiler framework), AIR compatibility landed to broaden GPU architecture support [5], paired with CI improvements disabling macOS debug lit tests to preserve limited CI capacity [6]. Across all four repos, 58 commits and 6 PRs shipped in 24 hours.
One email a day. Unsubscribe in one click.
Keep up with Rust in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Update your config.toml to explicitly set debugger discovery if you rely on GDB or LLDB tests rust-lang/rust [plan]
- → Review any CI that expects debuginfo tests to run by default; they will now be skipped rust-lang/rust [monitor]
- → Test codegen fixes on functions returning MaybeUninit values in your codebase rust-lang/rust [monitor]
References
- [1] Implement opt-in debugger discovery for GDB and LLDB in bootstrap ↗ rust-lang/rust
- [2] Auto merge of #159455 - Kobzol:bootstrap-discover-lldb, r=jieyouxu rust-lang/rust
- [3] codegen: handle OperandValue::Uninit in codegen_return_terminator ↗ rust-lang/rust
- [4] codegen: handle OperandValue::Uninit in codegen_return_terminator rust-lang/rust
- [5] Add AIR compatibility ↗ rust-lang/enzyme
- [6] Disable enzyme lit test ci for macos debug ↗ rust-lang/enzyme