Skip to content
This repository has been archived by the owner on Dec 29, 2022. It is now read-only.

ICE on hello-world with nightly-2019-05-15 #1461

Closed
parasyte opened this issue May 18, 2019 · 3 comments
Closed

ICE on hello-world with nightly-2019-05-15 #1461

parasyte opened this issue May 18, 2019 · 3 comments

Comments

@parasyte
Copy link
Contributor

Steps to reproduce:

cargo new --bin ice
cd ice
rustup install nightly-2019-05-15
rustup component add rls --toolchain nightly-2019-05-15
RUST_BAKCTRACE=1 rustup run nightly-2019-05-15 rls --cli # May require more than one try

Error:

thread 'rustc' panicked at 'index out of bounds: the len is 3 but the index is 4294955815', /rustc/372be4f360ce42b1a10126a711189796f8440ab4/src/libcore/slice/mod.rs:2695:10
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
   1: std::sys_common::backtrace::_print
   2: std::panicking::default_hook::{{closure}}
   3: std::panicking::default_hook
   4: rustc::util::common::panic_hook
   5: std::panicking::rust_panic_with_hook
   6: std::panicking::continue_panic_fmt
   7: rust_begin_unwind
   8: core::panicking::panic_fmt
   9: core::panicking::panic_bounds_check
  10: scoped_tls::ScopedKey<T>::with
  11: syntax_pos::symbol::Symbol::as_str
  12: <alloc::vec::Vec<T> as alloc::vec::SpecExtend<T,I>>::from_iter
  13: clippy_lints::utils::match_def_path
  14: <clippy_lints::regex::Regex as rustc::lint::LateLintPass>::check_expr
  15: <rustc::lint::context::LateLintPassObjects as rustc::lint::LateLintPass>::check_expr
  16: <rustc::lint::context::LateContextAndPass<T> as rustc::hir::intravisit::Visitor>::visit_expr
  17: rustc::hir::intravisit::walk_block
  18: rustc::hir::intravisit::walk_expr
  19: <rustc::lint::context::LateContextAndPass<T> as rustc::hir::intravisit::Visitor>::visit_expr
  20: rustc::hir::intravisit::walk_block
  21: rustc::hir::intravisit::walk_expr
  22: <rustc::lint::context::LateContextAndPass<T> as rustc::hir::intravisit::Visitor>::visit_expr
  23: rustc::hir::intravisit::walk_fn
  24: rustc::hir::intravisit::walk_item
  25: rustc::hir::intravisit::Visitor::visit_nested_item
  26: rustc::hir::intravisit::walk_crate
  27: rustc::lint::context::late_lint_pass_crate
  28: rustc::lint::context::late_lint_crate
  29: rustc::util::common::time
  30: rustc::util::common::time
  31: __rust_maybe_catch_panic
  32: <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
  33: __rust_maybe_catch_panic
  34: rustc_interface::passes::analysis::{{closure}}
  35: rustc::util::common::time
  36: rustc_interface::passes::analysis
  37: rustc::ty::query::__query_compute::analysis
  38: rustc::ty::query::<impl rustc::ty::query::config::QueryAccessors for rustc::ty::query::queries::analysis>::compute
  39: rustc::dep_graph::graph::DepGraph::with_task_impl
  40: rustc::ty::query::plumbing::<impl rustc::ty::context::TyCtxt>::get_query
  41: rustc::ty::context::tls::enter_global
  42: rustc_interface::passes::BoxedGlobalCtxt::access::{{closure}}
  43: rustc_interface::passes::create_global_ctxt::{{closure}}
  44: rustc_interface::interface::run_compiler_in_existing_thread_pool
  45: std::thread::local::LocalKey<T>::with
  46: scoped_tls::ScopedKey<T>::set
  47: syntax::with_globals
query stack during panic:
end of query stack
@dvic
Copy link

dvic commented May 18, 2019

rustup override set nightly-2019-05-12 fixed the problem for me.

It seems that this version is the latest version that does not have this problem.

@Xanewok
Copy link
Member

Xanewok commented May 18, 2019

thread 'rustc' panicked at 'index out of bounds: the len is 3 but the index is 4294955815', /rustc/372be4f360ce42b1a10126a711189796f8440ab4/src/libcore/slice/mod.rs:2695:10
...
   9: core::panicking::panic_bounds_check
  10: scoped_tls::ScopedKey<T>::with
  11: syntax_pos::symbol::Symbol::as_str
  12: <alloc::vec::Vec<T> as alloc::vec::SpecExtend<T,I>>::from_iter
  13: clippy_lints::utils::match_def_path

@Manishearth @oli-obk I assume that's due to the symbols (or clippy's usage of them in lazy_static) being unsound? Will this be fixed with rust-lang/rust#60940?

@Manishearth
Copy link
Member

Yep, however that won't release a new RLS till the cargo breakage is fixed too.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants