rust-lang / rust-lang/rust-analyzer

panic: hir: `index out of bounds`

Open
#23,130 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-hir C-bug I-panic
Dominant language
Rust
Stars
16.9k
Forks
2.2k
Avg merge
1d 12h
Merged PRs (30d)
72

Description

fn main() {
    struct Foo {
        x: String,
    }

    let foo = Foo { x: String::new() };

    let c = || {
        let (_, t2) = foo.x; //~ ERROR mismatched types
    };
}

rust-analyzer analysis-stats . --run-all-ide-things

Database loaded:     332.47ms, 217minstr, 48mb (metadata 181.63ms, 961kinstr, 151kb; build 17.07ms, 172kinstr, 1744b)
  item trees: 1
  dependency lines of code: 1_470_449, item trees: 2_951
  dependency item stats: traits: 849, impl: 9_706, mods: 3_050, macro calls: 5_590, macro rules: 1_051
Item Tree Collection: 2.11s, 21ginstr, 422mb
  Total Statistics:
    crates: 1, mods: 1, decls: 1, bodies: 1, adts: 0, consts: 0, signatures: 1, variants: 0
  Workspace:
    traits: 0, macro_rules macros: 0, proc_macros: 0
    lines of code: 12, item trees: 1
    usages: traits: 0, impl: 0, mods: 0, macro calls: 0, macro rules: 0
  Dependencies:
    lines of code: 1_470_449, item trees: 2_951
    declarations: traits: 849, impl: 9_706, mods: 3_050, macro calls: 5_590, macro rules: 1_051
Item Collection:     1.28s, 10ginstr, 176mb
Crate lang items:    265.57ms, 2188minstr, 31mb
Expression Store Lowering: 187.04µs, 201kinstr, 22kb
  exprs: 8, ??ty: 0 (0%), ?ty: 1 (12%), !ty: 0
  pats: 5, ??ty: 2 (40%), ?ty: 2 (40%), !ty: 1
  panics: 0
Inference:           206.68ms, 1143minstr, 35mb
MIR lowering:        20.61µs, 52kinstr, 864b
Mir failed bodies: 1 (100%)
Data layouts:        60.00ns, 14kinstr, 0b
Failed data layouts: 0 (100%)
Const evaluation:    5.47µs, 23kinstr, 64b
Failed const evals: 0 (100%)
0/1 0% inlay hints: /tmp/ra/src/main.rs
thread 'main' (1268175) panicked at crates/hir/src/lib.rs:5056:33:
index out of bounds: the len is 1 but the index is 1
stack backtrace:
   0:     0x55dc4137405a - std[a552854b934cb347]::backtrace_rs::backtrace::libunwind::trace
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
   1:     0x55dc4137405a - std[a552854b934cb347]::backtrace_rs::backtrace::trace_unsynchronized::<std[a552854b934cb347]::sys::backtrace::_print_fmt::{closure#1}>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
   2:     0x55dc4137405a - std[a552854b934cb347]::sys::backtrace::_print_fmt
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/sys/backtrace.rs:74:9
   3:     0x55dc4137405a - <<std[a552854b934cb347]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[b53569a4eb974840]::fmt::Display>::fmt
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/sys/backtrace.rs:44:26
   4:     0x55dc3fbc64aa - <core[b53569a4eb974840]::fmt::rt::Argument>::fmt
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/fmt/rt.rs:152:76
   5:     0x55dc3fbc64aa - core[b53569a4eb974840]::fmt::write
   6:     0x55dc4138097c - core[b53569a4eb974840]::io::write::default_write_fmt::<std[a552854b934cb347]::sys::stdio::unix::Stderr>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/io/write.rs:402:11
   7:     0x55dc4138097c - <std[a552854b934cb347]::sys::stdio::unix::Stderr as core[b53569a4eb974840]::io::write::Write>::write_fmt
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/io/write.rs:335:13
   8:     0x55dc4134bde4 - <std[a552854b934cb347]::sys::backtrace::BacktraceLock>::print
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/sys/backtrace.rs:47:9
   9:     0x55dc4134bde4 - std[a552854b934cb347]::panicking::default_hook::{closure#0}
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:292:27
  10:     0x55dc41369a46 - std[a552854b934cb347]::panicking::default_hook
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:319:9
  11:     0x55dc41369ea2 - std[a552854b934cb347]::panicking::panic_with_hook
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:815:13
  12:     0x55dc4134be92 - std[a552854b934cb347]::panicking::panic_handler::{closure#0}
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:688:13
  13:     0x55dc41344ad9 - std[a552854b934cb347]::sys::backtrace::__rust_end_short_backtrace::<std[a552854b934cb347]::panicking::panic_handler::{closure#0}, !>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/sys/backtrace.rs:182:18
  14:     0x55dc4134ccdf - __rustc[27c0586c984f631c]::rust_begin_unwind
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:679:5
  15:     0x55dc3fbc6c0c - core[b53569a4eb974840]::panicking::panic_fmt
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/panicking.rs:80:14
  16:     0x55dc3fbc6a5c - core[b53569a4eb974840]::panicking::panic_bounds_check
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/panicking.rs:271:5
  17:     0x55dc3fc4dc6c - <usize as core[b53569a4eb974840]::slice::index::SliceIndex<[hir_def[abc8bc8c35c58bbf]::signatures::FieldData]>>::index
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/index.rs:238:10
  18:     0x55dc3fc4dc6c - <[hir_def[abc8bc8c35c58bbf]::signatures::FieldData] as core[b53569a4eb974840]::ops::index::Index<usize>>::index
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/index.rs:19:15
  19:     0x55dc3fc4dc6c - <alloc[f47972edb36fa87e]::vec::Vec<hir_def[abc8bc8c35c58bbf]::signatures::FieldData> as core[b53569a4eb974840]::ops::index::Index<usize>>::index
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3934:9
  20:     0x55dc3fc4dc6c - <la_arena[86f203f7f29bb58e]::Arena<hir_def[abc8bc8c35c58bbf]::signatures::FieldData> as core[b53569a4eb974840]::ops::index::Index<la_arena[86f203f7f29bb58e]::Idx<hir_def[abc8bc8c35c58bbf]::signatures::FieldData>>>::index
                               at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/la-arena-0.3.1/src/lib.rs:470:19
  21:     0x55dc3fc4dc6c - <hir[d95ee67c52d0e124]::ClosureCapture>::display_place_source_code
                               at /home/matthias/vcs/github/rust-analyzer/crates/hir/src/lib.rs:5056:33
  22:     0x55dc40616320 - ide[b7db2882cc4b13a0]::inlay_hints::closure_captures::hints
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/inlay_hints/closure_captures.rs:92:21
  23:     0x55dc405aad83 - ide[b7db2882cc4b13a0]::inlay_hints::hints
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/inlay_hints.rs:238:25
  24:     0x55dc405777ec - ide[b7db2882cc4b13a0]::inlay_hints::inlay_hints::{closure#0}
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/inlay_hints.rs:108:13
  25:     0x55dc405777ec - ide[b7db2882cc4b13a0]::inlay_hints::inlay_hints
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/inlay_hints.rs:118:9
  26:     0x55dc405777ec - <ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/lib.rs:513:27
  27:     0x55dc405777ec - <ide[b7db2882cc4b13a0]::Analysis>::with_db::<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}::{closure#0}
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/lib.rs:975:70
  28:     0x55dc405777ec - std[a552854b934cb347]::panicking::catch_unwind::do_call::<<ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:576:43
  29:     0x55dc405777ec - std[a552854b934cb347]::panicking::catch_unwind::<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}::{closure#0}>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:544:19
  30:     0x55dc405777ec - std[a552854b934cb347]::panic::catch_unwind::<<ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:359:14
  31:     0x55dc405777ec - <salsa[acfdc632cfed4ae8]::cancelled::Cancelled>::catch::<<ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>
                               at /home/matthias/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/salsa-0.28.2/src/cancelled.rs:36:15
  32:     0x55dc405777ec - <ide[b7db2882cc4b13a0]::Analysis>::with_db::<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/lib.rs:975:50
  33:     0x55dc405777ec - <hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::Attached>::attach_allow_change::<core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}>
                               at /home/matthias/vcs/github/rust-analyzer/crates/hir-ty/src/next_solver/interner.rs:2482:13
  34:     0x55dc405777ec - hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::attach_db_allow_change::<core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}>::{closure#0}
                               at /home/matthias/vcs/github/rust-analyzer/crates/hir-ty/src/next_solver/interner.rs:2505:46
  35:     0x55dc405777ec - <std[a552854b934cb347]::thread::local::LocalKey<hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::Attached>>::try_with::<hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::attach_db_allow_change<core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}>::{closure#0}, core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:464:12
  36:     0x55dc405777ec - <std[a552854b934cb347]::thread::local::LocalKey<hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::Attached>>::with::<hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::attach_db_allow_change<core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}>::{closure#0}, core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:428:20
  37:     0x55dc405777ec - hir_ty[bedd63ea05ae70e4]::next_solver::interner::tls_db::attach_db_allow_change::<core[b53569a4eb974840]::result::Result<alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>, salsa[acfdc632cfed4ae8]::cancelled::Cancelled>, <ide[b7db2882cc4b13a0]::Analysis>::with_db<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>::{closure#0}>
                               at /home/matthias/vcs/github/rust-analyzer/crates/hir-ty/src/next_solver/interner.rs:2505:19
  38:     0x55dc405777ec - <ide[b7db2882cc4b13a0]::Analysis>::with_db::<<ide[b7db2882cc4b13a0]::Analysis>::inlay_hints::{closure#0}, alloc[f47972edb36fa87e]::vec::Vec<ide[b7db2882cc4b13a0]::inlay_hints::InlayHint>>
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/lib.rs:975:9
  39:     0x55dc405777ec - <ide[b7db2882cc4b13a0]::Analysis>::inlay_hints
                               at /home/matthias/vcs/github/rust-analyzer/crates/ide/src/lib.rs:513:14
  40:     0x55dc41062719 - <rust_analyzer[34d45e4ec77e592c]::cli::flags::AnalysisStats>::run_ide_things
                               at /home/matthias/vcs/github/rust-analyzer/crates/rust-analyzer/src/cli/analysis_stats.rs:1388:26
  41:     0x55dc41062719 - <rust_analyzer[34d45e4ec77e592c]::cli::flags::AnalysisStats>::run
                               at /home/matthias/vcs/github/rust-analyzer/crates/rust-analyzer/src/cli/analysis_stats.rs:382:18
  42:     0x55dc412c5d21 - rust_analyzer[df215fd3610a7631]::actual_main
                               at /home/matthias/vcs/github/rust-analyzer/crates/rust-analyzer/src/bin/main.rs:74:59
  43:     0x55dc412c5d21 - rust_analyzer[df215fd3610a7631]::main
                               at /home/matthias/vcs/github/rust-analyzer/crates/rust-analyzer/src/bin/main.rs:32:9
  44:     0x55dc412c1c23 - <fn() -> core[b53569a4eb974840]::result::Result<std[a552854b934cb347]::process::ExitCode, anyhow[a81ad75cd846fe4]::Error> as core[b53569a4eb974840]::ops::function::FnOnce<()>>::call_once
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5
  45:     0x55dc412c1c23 - std[a552854b934cb347]::sys::backtrace::__rust_begin_short_backtrace::<fn() -> core[b53569a4eb974840]::result::Result<std[a552854b934cb347]::process::ExitCode, anyhow[a81ad75cd846fe4]::Error>, core[b53569a4eb974840]::result::Result<std[a552854b934cb347]::process::ExitCode, anyhow[a81ad75cd846fe4]::Error>>
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/sys/backtrace.rs:166:18
  46:     0x55dc412c3e92 - std[a552854b934cb347]::rt::lang_start::<core[b53569a4eb974840]::result::Result<std[a552854b934cb347]::process::ExitCode, anyhow[a81ad75cd846fe4]::Error>>::{closure#0}
                               at /home/matthias/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/rt.rs:206:18
  47:     0x55dc413688e3 - <&dyn core[b53569a4eb974840]::ops::function::Fn<(), Output = i32> + core[b53569a4eb974840]::panic::unwind_safe::RefUnwindSafe + core[b53569a4eb974840]::marker::Sync as core[b53569a4eb974840]::ops::function::FnOnce<()>>::call_once
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/core/src/ops/function.rs:287:21
  48:     0x55dc413688e3 - std[a552854b934cb347]::panicking::catch_unwind::do_call::<&dyn core[b53569a4eb974840]::ops::function::Fn<(), Output = i32> + core[b53569a4eb974840]::panic::unwind_safe::RefUnwindSafe + core[b53569a4eb974840]::marker::Sync, i32>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:576:43
  49:     0x55dc413688e3 - std[a552854b934cb347]::panicking::catch_unwind::<i32, &dyn core[b53569a4eb974840]::ops::function::Fn<(), Output = i32> + core[b53569a4eb974840]::panic::unwind_safe::RefUnwindSafe + core[b53569a4eb974840]::marker::Sync>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:544:19
  50:     0x55dc413688e3 - std[a552854b934cb347]::panic::catch_unwind::<&dyn core[b53569a4eb974840]::ops::function::Fn<(), Output = i32> + core[b53569a4eb974840]::panic::unwind_safe::RefUnwindSafe + core[b53569a4eb974840]::marker::Sync, i32>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panic.rs:359:14
  51:     0x55dc413688e3 - std[a552854b934cb347]::rt::lang_start_internal::{closure#0}
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/rt.rs:175:24
  52:     0x55dc413688e3 - std[a552854b934cb347]::panicking::catch_unwind::do_call::<std[a552854b934cb347]::rt::lang_start_internal::{closure#0}, isize>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:576:43
  53:     0x55dc413688e3 - std[a552854b934cb347]::panicking::catch_unwind::<isize, std[a552854b934cb347]::rt::lang_start_internal::{closure#0}>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panicking.rs:544:19
  54:     0x55dc413688e3 - std[a552854b934cb347]::panic::catch_unwind::<std[a552854b934cb347]::rt::lang_start_internal::{closure#0}, isize>
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/panic.rs:359:14
  55:     0x55dc413688e3 - std[a552854b934cb347]::rt::lang_start_internal
                               at /rustc/3d6c19bb9ab4798ecfb2ee943df01a811720fc27/library/std/src/rt.rs:171:5
  56:     0x55dc412ddb6c - main
  57:     0x7fe3d2227741 - <unknown>
  58:     0x7fe3d2227879 - __libc_start_main
  59:     0x55dc3fb3fb85 - _start
  60:                0x0 - <unknown>

rust-analyzer 0.0.0 (97066c3c88 2026-08-12)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with crates/hir/src/lib.rs:5056 and the caller in crates/ide/src/inlay_hints/closure_captures.rs:92, using the provided closure reproduction and rust-analyzer analysis-stats . --run-all-ide-things. Trace how the invalid field index is produced during closure-capture inlay-hint handling. Done means the reproduction completes without the index out of bounds panic.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
70/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.