Repository navigation
Use spawned SBDebugger instance - #162940
Merged
Merged
Conversation
Collaborator
|
|
Kobzol
reviewed
Sep 18, 2026
Member
|
Thanks! You can r=me once CI is green. |
Contributor
Author
|
@bors r=Kobzol |
Contributor
JonathanBrouwer
added a commit
to JonathanBrouwer/rust
that referenced
this pull request
Sep 19, 2026
Use spawned `SBDebugger` instance As mentioned in rust-lang#162598, this is a small forward-compatibility fix for `tests/debuginfo` with LLDB 23, which seems to be significantly less willing to let us use the parent LLDB instance. I assume this is due to not updating internal/python state while a command is actively being processed (the entire time `debugger_tester` is running, we're in a top-level `script` command)? We avoided this before because we need to be able to exit with a non-0 status code when not all the expected types/vars are tested, and it wasn't obvious how to get that to happen. Here, we use `os.kill(os.getpid(), signal.SIGTERM)`, which kills the parent LLDB process from within python. `SIGTERM` is used because `SIGKILL` is unix only, and `SIGABRT` spits out a huge LLDB backtrace with "report this error to LLDB", which is potentially confusing. The error exit behavior can be tested by deleting one of the `lldb-repr` lines from `tests/debuginfo/basic-types/main.rs` r? @Kobzol, @jieyouxu
This was referenced Sep 19, 2026
rust-bors Bot
pushed a commit
that referenced
this pull request
Sep 19, 2026
…uwer Rollup of 22 pull requests Successful merges: - #163001 (Temporarily disable `test-x86_64-fuchsia`) - #162880 (Mini optimization in `rustc_hir_typeck::upvar::restrict_precision_for_drop_types`) - #161424 (implement `VaArgSafe` for `f128`) - #161777 (Add Natvis visualiser and debuginfo tests for `f128`) - #162506 (Avoid suggesting imports of traits declared inside fn bodies) - #162591 (Move parse error recovery for expression operators "out of line" & refactor in the area) - #162669 ([rustdoc] Correctly handle intra-doc links on inlined same item with different names) - #162733 (Add useful APIs to `Unique(Arc|Rc)`) - #162913 (Refactor LivenessResults into LivenessComputation, without typeck) - #162924 (Remove applying inline attributes at the callsite) - #162940 (Use spawned `SBDebugger` instance) - #162950 (More AST lowering cleanups) - #162964 (Update `browser-ui-test` version to `0.25.2`) - #162979 (mark `f128` as reliable on `powerpc64` with `+vsx`) - #161743 (Add performance notes for the floating-point round method) - #162797 (yeet AliasConstKind::opt_def_id) - #162836 (Ping T-libs-ping instead of T-libs-fcp for backports) - #162873 (Adjust `bug!`/`span_bug!` emission) - #162956 (Add missing `#[repr(C)]` in UI, codegen and assembly tests) - #162971 (libtest harness: avoid 'extern crate test' with custom runner) - #162981 (rustc-dev-guide subtree update) - #162985 (Error on invalid placements for unstable attributes)
rust-bors Bot
pushed a commit
that referenced
this pull request
Sep 19, 2026
Rollup merge of #162940 - Walnut356:alt_exit, r=Kobzol Use spawned `SBDebugger` instance As mentioned in #162598, this is a small forward-compatibility fix for `tests/debuginfo` with LLDB 23, which seems to be significantly less willing to let us use the parent LLDB instance. I assume this is due to not updating internal/python state while a command is actively being processed (the entire time `debugger_tester` is running, we're in a top-level `script` command)? We avoided this before because we need to be able to exit with a non-0 status code when not all the expected types/vars are tested, and it wasn't obvious how to get that to happen. Here, we use `os.kill(os.getpid(), signal.SIGTERM)`, which kills the parent LLDB process from within python. `SIGTERM` is used because `SIGKILL` is unix only, and `SIGABRT` spits out a huge LLDB backtrace with "report this error to LLDB", which is potentially confusing. The error exit behavior can be tested by deleting one of the `lldb-repr` lines from `tests/debuginfo/basic-types/main.rs` r? @Kobzol, @jieyouxu
pull Bot
pushed a commit
to xtqqczze/rust-lang-miri
that referenced
this pull request
Sep 20, 2026
…uwer Rollup of 22 pull requests Successful merges: - rust-lang/rust#163001 (Temporarily disable `test-x86_64-fuchsia`) - rust-lang/rust#162880 (Mini optimization in `rustc_hir_typeck::upvar::restrict_precision_for_drop_types`) - rust-lang/rust#161424 (implement `VaArgSafe` for `f128`) - rust-lang/rust#161777 (Add Natvis visualiser and debuginfo tests for `f128`) - rust-lang/rust#162506 (Avoid suggesting imports of traits declared inside fn bodies) - rust-lang/rust#162591 (Move parse error recovery for expression operators "out of line" & refactor in the area) - rust-lang/rust#162669 ([rustdoc] Correctly handle intra-doc links on inlined same item with different names) - rust-lang/rust#162733 (Add useful APIs to `Unique(Arc|Rc)`) - rust-lang/rust#162913 (Refactor LivenessResults into LivenessComputation, without typeck) - rust-lang/rust#162924 (Remove applying inline attributes at the callsite) - rust-lang/rust#162940 (Use spawned `SBDebugger` instance) - rust-lang/rust#162950 (More AST lowering cleanups) - rust-lang/rust#162964 (Update `browser-ui-test` version to `0.25.2`) - rust-lang/rust#162979 (mark `f128` as reliable on `powerpc64` with `+vsx`) - rust-lang/rust#161743 (Add performance notes for the floating-point round method) - rust-lang/rust#162797 (yeet AliasConstKind::opt_def_id) - rust-lang/rust#162836 (Ping T-libs-ping instead of T-libs-fcp for backports) - rust-lang/rust#162873 (Adjust `bug!`/`span_bug!` emission) - rust-lang/rust#162956 (Add missing `#[repr(C)]` in UI, codegen and assembly tests) - rust-lang/rust#162971 (libtest harness: avoid 'extern crate test' with custom runner) - rust-lang/rust#162981 (rustc-dev-guide subtree update) - rust-lang/rust#162985 (Error on invalid placements for unstable attributes)
github-actions Bot
pushed a commit
to rust-lang/rustc-dev-guide
that referenced
this pull request
Sep 21, 2026
…uwer Rollup of 22 pull requests Successful merges: - rust-lang/rust#163001 (Temporarily disable `test-x86_64-fuchsia`) - rust-lang/rust#162880 (Mini optimization in `rustc_hir_typeck::upvar::restrict_precision_for_drop_types`) - rust-lang/rust#161424 (implement `VaArgSafe` for `f128`) - rust-lang/rust#161777 (Add Natvis visualiser and debuginfo tests for `f128`) - rust-lang/rust#162506 (Avoid suggesting imports of traits declared inside fn bodies) - rust-lang/rust#162591 (Move parse error recovery for expression operators "out of line" & refactor in the area) - rust-lang/rust#162669 ([rustdoc] Correctly handle intra-doc links on inlined same item with different names) - rust-lang/rust#162733 (Add useful APIs to `Unique(Arc|Rc)`) - rust-lang/rust#162913 (Refactor LivenessResults into LivenessComputation, without typeck) - rust-lang/rust#162924 (Remove applying inline attributes at the callsite) - rust-lang/rust#162940 (Use spawned `SBDebugger` instance) - rust-lang/rust#162950 (More AST lowering cleanups) - rust-lang/rust#162964 (Update `browser-ui-test` version to `0.25.2`) - rust-lang/rust#162979 (mark `f128` as reliable on `powerpc64` with `+vsx`) - rust-lang/rust#161743 (Add performance notes for the floating-point round method) - rust-lang/rust#162797 (yeet AliasConstKind::opt_def_id) - rust-lang/rust#162836 (Ping T-libs-ping instead of T-libs-fcp for backports) - rust-lang/rust#162873 (Adjust `bug!`/`span_bug!` emission) - rust-lang/rust#162956 (Add missing `#[repr(C)]` in UI, codegen and assembly tests) - rust-lang/rust#162971 (libtest harness: avoid 'extern crate test' with custom runner) - rust-lang/rust#162981 (rustc-dev-guide subtree update) - rust-lang/rust#162985 (Error on invalid placements for unstable attributes)
makai410
pushed a commit
to makai410/rust
that referenced
this pull request
Oct 1, 2026
…nathanBrouwer Rollup of 22 pull requests Successful merges: - rust-lang#163001 (Temporarily disable `test-x86_64-fuchsia`) - rust-lang#162880 (Mini optimization in `rustc_hir_typeck::upvar::restrict_precision_for_drop_types`) - rust-lang#161424 (implement `VaArgSafe` for `f128`) - rust-lang#161777 (Add Natvis visualiser and debuginfo tests for `f128`) - rust-lang#162506 (Avoid suggesting imports of traits declared inside fn bodies) - rust-lang#162591 (Move parse error recovery for expression operators "out of line" & refactor in the area) - rust-lang#162669 ([rustdoc] Correctly handle intra-doc links on inlined same item with different names) - rust-lang#162733 (Add useful APIs to `Unique(Arc|Rc)`) - rust-lang#162913 (Refactor LivenessResults into LivenessComputation, without typeck) - rust-lang#162924 (Remove applying inline attributes at the callsite) - rust-lang#162940 (Use spawned `SBDebugger` instance) - rust-lang#162950 (More AST lowering cleanups) - rust-lang#162964 (Update `browser-ui-test` version to `0.25.2`) - rust-lang#162979 (mark `f128` as reliable on `powerpc64` with `+vsx`) - rust-lang#161743 (Add performance notes for the floating-point round method) - rust-lang#162797 (yeet AliasConstKind::opt_def_id) - rust-lang#162836 (Ping T-libs-ping instead of T-libs-fcp for backports) - rust-lang#162873 (Adjust `bug!`/`span_bug!` emission) - rust-lang#162956 (Add missing `#[repr(C)]` in UI, codegen and assembly tests) - rust-lang#162971 (libtest harness: avoid 'extern crate test' with custom runner) - rust-lang#162981 (rustc-dev-guide subtree update) - rust-lang#162985 (Error on invalid placements for unstable attributes)
makai410
pushed a commit
to makai410/rustc_public
that referenced
this pull request
Oct 1, 2026
…uwer Rollup of 22 pull requests Successful merges: - rust-lang/rust#163001 (Temporarily disable `test-x86_64-fuchsia`) - rust-lang/rust#162880 (Mini optimization in `rustc_hir_typeck::upvar::restrict_precision_for_drop_types`) - rust-lang/rust#161424 (implement `VaArgSafe` for `f128`) - rust-lang/rust#161777 (Add Natvis visualiser and debuginfo tests for `f128`) - rust-lang/rust#162506 (Avoid suggesting imports of traits declared inside fn bodies) - rust-lang/rust#162591 (Move parse error recovery for expression operators "out of line" & refactor in the area) - rust-lang/rust#162669 ([rustdoc] Correctly handle intra-doc links on inlined same item with different names) - rust-lang/rust#162733 (Add useful APIs to `Unique(Arc|Rc)`) - rust-lang/rust#162913 (Refactor LivenessResults into LivenessComputation, without typeck) - rust-lang/rust#162924 (Remove applying inline attributes at the callsite) - rust-lang/rust#162940 (Use spawned `SBDebugger` instance) - rust-lang/rust#162950 (More AST lowering cleanups) - rust-lang/rust#162964 (Update `browser-ui-test` version to `0.25.2`) - rust-lang/rust#162979 (mark `f128` as reliable on `powerpc64` with `+vsx`) - rust-lang/rust#161743 (Add performance notes for the floating-point round method) - rust-lang/rust#162797 (yeet AliasConstKind::opt_def_id) - rust-lang/rust#162836 (Ping T-libs-ping instead of T-libs-fcp for backports) - rust-lang/rust#162873 (Adjust `bug!`/`span_bug!` emission) - rust-lang/rust#162956 (Add missing `#[repr(C)]` in UI, codegen and assembly tests) - rust-lang/rust#162971 (libtest harness: avoid 'extern crate test' with custom runner) - rust-lang/rust#162981 (rustc-dev-guide subtree update) - rust-lang/rust#162985 (Error on invalid placements for unstable attributes)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
As mentioned in #162598, this is a small forward-compatibility fix for
tests/debuginfowith LLDB 23, which seems to be significantly less willing to let us use the parent LLDB instance. I assume this is due to not updating internal/python state while a command is actively being processed (the entire timedebugger_testeris running, we're in a top-levelscriptcommand)?We avoided this before because we need to be able to exit with a non-0 status code when not all the expected types/vars are tested, and it wasn't obvious how to get that to happen.
Here, we use
os.kill(os.getpid(), signal.SIGTERM), which kills the parent LLDB process from within python.SIGTERMis used becauseSIGKILLis unix only, andSIGABRTspits out a huge LLDB backtrace with "report this error to LLDB", which is potentially confusing.The error exit behavior can be tested by deleting one of the
lldb-reprlines fromtests/debuginfo/basic-types/main.rsr? @Kobzol, @jieyouxu