Skip to content

regression: thread names missing from stack overflow error messages #144481

Closed

Description

@benesch

Thread names have gone missing in stack overflow messages in Rust v1.89 (currently in beta). Reproduces on both Darwin and Linux.

I haven't bisected, but the culprit is almost certainly #140628. Nothing else has touched the stack overflow code path since Rust v1.88. cc @joboet @workingjubilee @RalfJung @Mark-Simulacrum as the reviewers of #140628.

Code

I tried this code:

fn main() {
    f()
}

fn f() {
    f();
}

I expected to see the thread name (main) included in the error message:

thread 'main' has overflowed its stack
fatal runtime error: stack overflow, aborting
Aborted

Instead, the thread is listed as <unknown>:

thread '<unknown>' has overflowed its stack
fatal runtime error: stack overflow, aborting
Aborted

Version it worked on

Works on the latest stable Rust (v1.88.0).

Version with regression

Broken in v1.89.0-beta.7. Tested on both Darwin and Linux.

rustc 1.89.0-beta.7 (4229c2e70 2025-07-25)
binary: rustc
commit-hash: 4229c2e708ce796c71747b7fa177ff4ef9aa794c
commit-date: 2025-07-25
host: aarch64-apple-darwin
release: 1.89.0-beta.7
LLVM version: 20.1.7

rustc 1.89.0-beta.7 (4229c2e70 2025-07-25)
binary: rustc
commit-hash: 4229c2e708ce796c71747b7fa177ff4ef9aa794c
commit-date: 2025-07-25
host: x86_64-unknown-linux-gnu
release: 1.89.0-beta.7
LLVM version: 20.1.7

@rustbot modify labels: +regression-from-stable-to-beta -regression-untriaged

Activity

  1. added
    C-bugCategory: This is a bug.
    regression-untriagedUntriaged performance or correctness regression.
    on Jul 26, 2025
  2. added
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    I-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
    and removed
    regression-untriagedUntriaged performance or correctness regression.
    on Jul 26, 2025
  3. ChrisDenton commented on Jul 26, 2025

    @ChrisDenton
  4. benesch commented on Jul 26, 2025

    @benesch
    Author
  5. added
    T-libsRelevant to the library team, which will review and decide on the PR/issue.
    A-thread-localsArea: Thread local storage (TLS)
    and removed
    needs-triageThis issue may need triage. Remove when done. See docs forge.rust-lang.org/release/issue-triaging
    on Jul 26, 2025
  6. added a commit that references this issue on Jul 26, 2025
    da89cf5
  7. removed
    I-prioritizeIssue needs a team member to assess the impact. Will be replaced by P-{low,medium,high,critical}
    on Jul 28, 2025
  8. added 2 commits that reference this issue on Jul 29, 2025
    270c3b1
    4bfbd80
  9. added a commit that references this issue on Jul 29, 2025
    a9feef6
  10. added 2 commits that reference this issue on Jul 30, 2025
    1124ac6
    9bf6c3e
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-thread-localsArea: Thread local storage (TLS)C-bugCategory: This is a bug.T-libsRelevant to the library team, which will review and decide on the PR/issue.regression-from-stable-to-betaPerformance or correctness regression from stable to beta.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions