rust-lang / rust-analyzer

A Rust compiler front-end for IDEs
https://rust-analyzer.github.io/
Apache License 2.0
14.05k stars 1.56k forks source link

Panic if bindings are included #15997

Closed Rot127 closed 7 months ago

Rot127 commented 9 months ago

rust-analyzer panics for me after a few seconds use, if the workspace uses bindings (generated by bindgen in build.rs).

Steps to reproduce:

Work around

If the include (include!(concat!(env!("OUT_DIR"), "/bindings.rs"));) of the bindings is removed, it seems to work fine.

rust-analyzer version: rust-analyzer 1.74.0 (79e9716 2023-11-13)

rustc version: rustc 1.74.0 (79e9716c9 2023-11-13)

relevant settings: -

Logs and src

Log ``` 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:31:59.315 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:31:59.324 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:31:59.325 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:31:59.400 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:31:59.401 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:31:59.401 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:31:59.401 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:31:59.401 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:31:59.401 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.163 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:32:07.164 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:07.326 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:07.327 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:32:07.328 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:32:07.329 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:32:07.329 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:32:07.330 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:32:07.331 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.331 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:32:07.332 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.333 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:32:07.333 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:32:07.576 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:12.149 helix_lsp::transport [ERROR] rust-analyzer <- InvalidParams: code action without data 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "> fetch_native_diagnostics\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'Worker' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/line-index-0.1.0-pre.1/src/lib.rs:148:35:\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "invalid offset\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:12.238 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::panicking::panic_display\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:168:5\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: core::panicking::panic_str\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:152:5\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: core::option::expect_failed\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/option.rs:1988:5\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: ::line_col\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::lsp::to_proto::range\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: , rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call>::extend_trusted, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>::{closure#0}>::{closure#0}>\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: as alloc::vec::spec_from_iter::SpecFromIter, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: <&mut rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0} as core::ops::function::FnMut<(vfs::FileId,)>>::call_mut\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 11: )> as alloc::vec::spec_from_iter::SpecFromIter<(vfs::FileId, alloc::vec::Vec), core::iter::adapters::filter_map::FilterMap, rust_analyzer::diagnostics::fetch_native_diagnostics::{closure#0}>>>::from_iter\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- " 12: <::spawn<>::spawn<::update_diagnostics::{closure#2}>::{closure#0}>::{closure#0} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}\n" 2023-11-30T23:32:12.246 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "Panic context:\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "> \n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "version: 1.74.0 (79e9716 2023-11-13)\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "notification: textDocument/didSave\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'LspServer' panicked at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/src/tools/rust-analyzer/crates/stdx/src/thread/pool.rs:86:35:\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "called `Result::unwrap()` on an `Err` value: \"SendError(..)\"\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::result::unwrap_failed\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/result.rs:1652:5\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: >::spawn_with_sender::\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: rust_analyzer::handlers::notification::run_flycheck\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: rust_analyzer::handlers::notification::handle_did_save_text_document\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: ::on_sync_mut::\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 7: ::handle_event\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 8: ::run\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 9: rust_analyzer::main_loop::main_loop\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 10: rust_analyzer::run_server\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "thread '' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/lsp-server-0.7.4/src/stdio.rs:29:37:\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "receiver was dropped, failed to send a message: \"SendError(..)\"\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::result::unwrap_failed\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/result.rs:1652:5\n" 2023-11-30T23:32:13.413 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- "thread 'main' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/jod-thread-0.1.2/src/lib.rs:33:22:\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- "called `Result::unwrap()` on an `Err` value: Any { .. }\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- "stack backtrace:\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 0: rust_begin_unwind\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/std/src/panicking.rs:597:5\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 1: core::panicking::panic_fmt\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/panicking.rs:72:14\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 2: core::result::unwrap_failed\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " at /rustc/79e9716c980570bfd1f666e3b16ac583f0168962/library/core/src/result.rs:1652:5\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 3: >>::join\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 4: >>::join\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 5: rust_analyzer::with_extra_thread::<&str, rust_analyzer::run_server>\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- " 6: rust_analyzer::main\n" 2023-11-30T23:32:14.079 helix_lsp::transport [ERROR] rust-analyzer err <- "note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.\n" 2023-11-30T23:32:14.174 helix_lsp::transport [ERROR] rust-analyzer err: <- StreamClosed ```

Minimal example: buggy.zip

lnicola commented 7 months ago

Hi, can you test using VS Code or a binary from https://github.com/rust-lang/rust-analyzer/releases? Or include the generated bindings.rs in your sample?

Rot127 commented 7 months ago

Actually I have no longer the problem. No idea why. Thanks for looking at it though

lnicola commented 7 months ago

Might have been fixed by https://github.com/rust-lang/rust-analyzer/pull/16041 if you have wide / non-Latin characters somewhere in there.

Rot127 commented 7 months ago

Possible. It's a pretty big code base. Thanks again.