On nightly `rustc` 2018-01-20 the following code snippet ```rust #![feature(nll)] use std::collections::BinaryHeap; fn main() { let mut heap: BinaryHeap<i32> = BinaryHeap::new(); let borrow = heap.peek_mut(); match (borrow, ()) { (Some(_), ()) => { println!("{:?}", heap); }, _ => { } }; } ``` causes an ICE when run as `rustc +nightly -Znll-dump-cause src/main.rs` (panic in `explain_why_borrow_contains_point`) <details> <summary>Backtrace</summary> ``` 9: core::panicking::panic at libcore/panicking.rs:51 10: rustc_mir::borrow_check::nll::explain_borrow::<impl rustc_mir::borrow_check::MirBorrowckCtxt<'cx, 'gcx, 'tcx>>::explain_why_borrow_contains_point 11: rustc_mir::borrow_check::error_reporting::<impl rustc_mir::borrow_check::MirBorrowckCtxt<'cx, 'gcx, 'tcx>>::report_conflicting_borrow 12: rustc_mir::borrow_check::MirBorrowckCtxt::access_place 13: <rustc_mir::borrow_check::MirBorrowckCtxt<'cx, 'gcx, 'tcx> as rustc_mir::dataflow::DataflowResultsConsumer<'cx, 'tcx>>::visit_statement_entry 14: rustc::ty::context::tls::enter 15: rustc::infer::InferCtxtBuilder::enter 16: rustc_mir::borrow_check::mir_borrowck 17: rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::compute_result 18: rustc::dep_graph::graph::DepGraph::with_task_impl 19: rustc_errors::Handler::track_diagnostics 20: rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check 21: rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::force 22: rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::try_get 23: rustc::ty::maps::TyCtxtAt::mir_borrowck 24: rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::mir_borrowck 25: rustc_driver::driver::phase_3_run_analysis_passes::{{closure}}::{{closure}} 26: <std::thread::local::LocalKey<T>>::with 27: <std::thread::local::LocalKey<T>>::with 28: rustc::ty::context::TyCtxt::create_and_enter 29: rustc_driver::driver::compile_input 30: rustc_driver::run_compiler ``` </details> <details> <summary>`rustc` version details</summary> ``` rustc 1.25.0-nightly (15a1e2844 2018-01-20) binary: rustc commit-hash: 15a1e2844dfea7850be5c6c901b67ceff370b0eb commit-date: 2018-01-20 host: x86_64-unknown-linux-gnu release: 1.25.0-nightly LLVM version: 4.0 ``` </details>