Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compiler panic while running rayon demo #48568

Closed
ndaniels opened this issue Feb 27, 2018 · 2 comments
Closed

Compiler panic while running rayon demo #48568

ndaniels opened this issue Feb 27, 2018 · 2 comments

Comments

@ndaniels
Copy link

Trying the Rayon nbody demo with the current nightly on MacOS 10.13.3 caused a compiler panic.

I executed the following from bash prompt:

cargo +nightly run --release -- nbody visualize

And received the following, apparently when compiling cgmath:

thread 'rustc' panicked at 'assertion failed: `(left != right)` left: `ParamEnv(Binder(ProjectionPredicate(ProjectionTy { substs: Slice([S, S]), item_def_id: DefId(2/0:885 ~ core[6938]::ops[0]::arith[0]::Add[0]::Output[0]) }, S)))`, right: `ParamEnv(Binder(ProjectionPredicate(ProjectionTy { substs: Slice([S, S]), item_def_id: DefId(2/0:885 ~ core[6938]::ops[0]::arith[0]::Add[0]::Output[0]) }, S)))`', librustc/traits/project.rs:146:17 note: Run with `RUST_BACKTRACE=1` for a backtrace.

Meta

rustc --version --verbose:

rustc --version --verbose rustc 1.24.0 (4d90ac38c 2018-02-12) binary: rustc commit-hash: 4d90ac38c0b61bb69470b61ea2cccea0df48d9e5 commit-date: 2018-02-12 host: x86_64-apple-darwin release: 1.24.0 LLVM version: 4.0

rustc +nightly --version --verbose:

binary: rustc
commit-hash: bedbad61195d2eae69b43eca49c6d3e2aee8f208
commit-date: 2018-02-26
host: x86_64-apple-darwin
release: 1.26.0-nightly
LLVM version: 6.0```



Backtrace:

   Compiling cocoa v0.13.0
thread 'rustc' panicked at 'assertion failed: `(left != right)`
  left: `ParamEnv(Binder(ProjectionPredicate(ProjectionTy { substs: Slice([S, S]), item_def_id: DefId(2/0:885 ~ core[6938]::ops[0]::arith[0]::Add[0]::Output[0]) }, S)))`,
 right: `ParamEnv(Binder(ProjectionPredicate(ProjectionTy { substs: Slice([S, S]), item_def_id: DefId(2/0:885 ~ core[6938]::ops[0]::arith[0]::Add[0]::Output[0]) }, S)))`', librustc/traits/project.rs:146:17
stack backtrace:
   0:        0x106621323 - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::h78255b011393efc6
   1:        0x106618a92 - std::sys_common::backtrace::_print::h068788d7ab321c64
   2:        0x10661e10d - std::panicking::default_hook::{{closure}}::h707de483218d106c
   3:        0x10661dd98 - std::panicking::default_hook::ha4b75b184472ef99
   4:        0x104c04fa0 - core::ops::function::Fn::call::h622a21864f3755f4
   5:        0x10661e5d0 - std::panicking::rust_panic_with_hook::h8e832f9bf3226352
   6:        0x10661e3ca - std::panicking::begin_panic_fmt::heebe356c4dcb17fb
   7:        0x104f321bf - rustc::traits::project::ProjectionTyCandidateSet::push_candidate::h777952838de6649f
   8:        0x104f36d79 - rustc::traits::project::opt_normalize_projection_type::h4e2a3fb7470ec768
   9:        0x104f326c2 - rustc::traits::project::poly_project_and_unify_type::{{closure}}::h9534d6dd7cffc586
  10:        0x104f322b6 - rustc::traits::project::poly_project_and_unify_type::h5c5c79ac648f1cae
  11:        0x104f2fd93 - <rustc::traits::fulfill::FulfillProcessor<'a, 'b, 'gcx, 'tcx> as rustc_data_structures::obligation_forest::ObligationProcessor>::process_obligation::h470b336fd79eeb80
  12:        0x104f2ebe8 - rustc::traits::fulfill::FulfillmentContext::select::h2241f3e06a4c0ed0
  13:        0x104f2dbe6 - rustc::traits::fulfill::FulfillmentContext::select_all_or_error::h5407d27f7846e56f
  14:        0x103eb85b0 - rustc_typeck::check::compare_method::compare_predicate_entailment::h1e2e8e86f71cddff
  15:        0x103ed65e2 - rustc_typeck::check::check_impl_items_against_trait::heb5073227ba5d86e
  16:        0x103ecfa9f - rustc_typeck::check::check_item_type::h09ca81f3691ac3b1
  17:        0x103f1abbc - rustc_typeck::check_crate::{{closure}}::hc575e80d425c94f0
  18:        0x103f16342 - rustc_typeck::check_crate::h1ee02350b3b6a17b
  19:        0x1038bcc54 - rustc::ty::context::TyCtxt::create_and_enter::ha895fab321dd8998
  20:        0x103924952 - rustc_driver::driver::compile_input::h09390d3c8da066cd
  21:        0x10394089e - rustc_driver::run_compiler::hf1b7fcf47f029bd5
  22:        0x10386b0c5 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb34e4b4b9070b735
  23:        0x10663903e - __rust_maybe_catch_panic
  24:        0x1038a6915 - <F as alloc::boxed::FnBox<A>>::call_box::ha23cd4726d1af3ed
  25:        0x10662ddbb - std::sys::unix::thread::Thread::new::thread_start::h0ccdb6055298a0f4
  26:     0x7fff7ff706c0 - _pthread_body
  27:     0x7fff7ff7056c - _pthread_start
@shssoichiro
Copy link
Contributor

shssoichiro commented Feb 27, 2018

Confirmed with latest nightly on Linux. I can start investigating.

Edit: Works on 2018-02-24 nightly and 1.24.0 stable (or rather, stable makes it past the cgmath dependency and fails at requiring a nightly-only feature elsewhere), so this is a regression from stable.

@ishitatsuyuki
Copy link
Contributor

ishitatsuyuki commented Feb 27, 2018

Duplicate of #48551

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

No branches or pull requests

4 participants