rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
97.22k stars 12.56k forks source link

Compiler panic when building rust-mozjs test (index out of bounds) #41484

Closed jdm closed 7 years ago

jdm commented 7 years ago

This appeared at some point between the 4/18 and 4/21 nightlies.

     Running `rustc --crate-name enumerate tests/enumerate.rs --emit=dep-info,link -C debuginfo=2 --test -C metadata=592f1c2a37b4b9d5 -C extra-filename=-592f1c2a37b4b9d5 --out-dir /home/travis/build/servo/rust-mozjs/target/debug/deps -L dependency=/home/travis/build/servo/rust-mozjs/target/debug/deps --extern num_traits=/home/travis/build/servo/rust-mozjs/target/debug/deps/libnum_traits-a8c1b7cdefa880e5.rlib --extern mozjs_sys=/home/travis/build/servo/rust-mozjs/target/debug/deps/libmozjs_sys-cb584c4573e7973b.rlib --extern libc=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblibc-40c5d4ad7fb59dec.rlib --extern log=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblog-b8e0bbfdccaf7d7a.rlib --extern heapsize=/home/travis/build/servo/rust-mozjs/target/debug/deps/libheapsize-d98feb857df5216d.rlib --extern lazy_static=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblazy_static-18005fa1be5dd889.rlib --extern js=/home/travis/build/servo/rust-mozjs/target/debug/deps/libjs-a705977d881207be.rlib -L native=/home/travis/build/servo/rust-mozjs/target/debug/build/js-98e44ff34f2dc83e/out/lib -L native=/home/travis/build/servo/rust-mozjs/target/debug/build/mozjs_sys-b28f1349c5b308d2/out/js/src -L native=/usr/lib/x86_64-linux-gnu`

error: internal compiler error: unexpected panic

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports

thread 'rustc' panicked at 'index out of bounds: the len is 8 but the index is 18446744073709551615', /checkout/src/libcollections/vec.rs:1488

note: Run with `RUST_BACKTRACE=1` for a backtrace.

error: Could not compile `js`.

Caused by:

  process didn't exit successfully: `rustc --crate-name enumerate tests/enumerate.rs --emit=dep-info,link -C debuginfo=2 --test -C metadata=592f1c2a37b4b9d5 -C extra-filename=-592f1c2a37b4b9d5 --out-dir /home/travis/build/servo/rust-mozjs/target/debug/deps -L dependency=/home/travis/build/servo/rust-mozjs/target/debug/deps --extern num_traits=/home/travis/build/servo/rust-mozjs/target/debug/deps/libnum_traits-a8c1b7cdefa880e5.rlib --extern mozjs_sys=/home/travis/build/servo/rust-mozjs/target/debug/deps/libmozjs_sys-cb584c4573e7973b.rlib --extern libc=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblibc-40c5d4ad7fb59dec.rlib --extern log=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblog-b8e0bbfdccaf7d7a.rlib --extern heapsize=/home/travis/build/servo/rust-mozjs/target/debug/deps/libheapsize-d98feb857df5216d.rlib --extern lazy_static=/home/travis/build/servo/rust-mozjs/target/debug/deps/liblazy_static-18005fa1be5dd889.rlib --extern js=/home/travis/build/servo/rust-mozjs/target/debug/deps/libjs-a705977d881207be.rlib -L native=/home/travis/build/servo/rust-mozjs/target/debug/build/js-98e44ff34f2dc83e/out/lib -L native=/home/travis/build/servo/rust-mozjs/target/debug/build/mozjs_sys-b28f1349c5b308d2/out/js/src -L native=/usr/lib/x86_64-linux-gnu` (exit code: 101)
jdm commented 7 years ago

$ RUST_BACKTRACE=1 cargo build --test enumerate

thread 'rustc' panicked at 'index out of bounds: the len is 8 but the index is 18446744073709551615', src/libcollections/vec.rs:1488
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
   1: std::panicking::default_hook::{{closure}}
   2: std::panicking::default_hook
   3: std::panicking::rust_panic_with_hook
   4: std::panicking::begin_panic
   5: std::panicking::begin_panic_fmt
   6: rust_begin_unwind
   7: core::panicking::panic_fmt
   8: core::panicking::panic_bounds_check
   9: rustc::ty::AdtDef::discriminant_for_variant
  10: rustc_trans::mir::rvalue::<impl rustc_trans::mir::MirContext<'a, 'tcx>>::trans_rvalue
  11: rustc_trans::mir::block::<impl rustc_trans::mir::MirContext<'a, 'tcx>>::trans_block
  12: rustc_trans::mir::trans_mir
  13: rustc_trans::trans_item::TransItem::define
  14: rustc_trans::base::trans_crate
  15: rustc_driver::driver::phase_4_translate_to_llvm
  16: rustc_driver::driver::compile_input::{{closure}}
  17: rustc_driver::driver::phase_3_run_analysis_passes::{{closure}}
  18: rustc::ty::context::TyCtxt::create_and_enter
  19: rustc_driver::driver::phase_3_run_analysis_passes
  20: rustc_driver::driver::compile_input
  21: rustc_driver::run_compiler
  22: std::panicking::try::do_call
  23: __rust_maybe_catch_panic
  24: <F as alloc::boxed::FnBox<A>>::call_box
  25: std::sys::imp::thread::Thread::new::thread_start
  26: _pthread_body
  27: _pthread_start
SimonSapin commented 7 years ago

Possibly duplicate of https://github.com/rust-lang/rust/issues/41394, and fixed in https://github.com/rust-lang/rust/issues/41408.

eddyb commented 7 years ago

@SimonSapin Identical message and backtrace, definitely a dupe.