Closed
Description
We are seeing a new ICE on macOS/Nightly: https://github.com/gfx-rs/wgpu-native/runs/700057380
Meta
rustc 1.45.0-nightly (9310e3bd4 2020-05-21)
Backtrace:
2020-05-22T15:48:09.2856440Z thread 'rustc' panicked at 'index out of bounds: the len is 0 but the index is 0', src/librustc_mir_build/hair/pattern/_match.rs:1184:21
2020-05-22T15:48:09.2859080Z stack backtrace:
2020-05-22T15:48:09.4938590Z 0: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
2020-05-22T15:48:09.4942910Z 1: core::fmt::write
2020-05-22T15:48:09.4952680Z 2: std::io::Write::write_fmt
2020-05-22T15:48:09.4953030Z 3: std::panicking::default_hook::{{closure}}
2020-05-22T15:48:09.5054570Z 4: std::panicking::default_hook
2020-05-22T15:48:09.5155760Z 5: rustc_driver::report_ice
2020-05-22T15:48:09.5172590Z 6: std::panicking::rust_panic_with_hook
2020-05-22T15:48:09.5173000Z 7: rust_begin_unwind
2020-05-22T15:48:09.5173420Z 8: core::panicking::panic_fmt
2020-05-22T15:48:09.5173790Z 9: core::panicking::panic_bounds_check
2020-05-22T15:48:09.5174910Z 10: rustc_mir_build::hair::pattern::_match::Fields::replace_with_fieldpats
2020-05-22T15:48:09.5175400Z 11: rustc_mir_build::hair::pattern::_match::PatStack::specialize_constructor
2020-05-22T15:48:09.5175790Z 12: rustc_mir_build::hair::pattern::_match::is_useful_specialized
2020-05-22T15:48:09.5176130Z 13: <core::iter::adapters::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
2020-05-22T15:48:09.5176540Z 14: rustc_mir_build::hair::pattern::_match::is_useful
2020-05-22T15:48:09.5176870Z 15: rustc_mir_build::hair::pattern::_match::is_useful
2020-05-22T15:48:09.5177250Z 16: rustc_mir_build::hair::pattern::_match::is_useful
2020-05-22T15:48:09.5177670Z 17: rustc_mir_build::hair::pattern::_match::is_useful_specialized
2020-05-22T15:48:09.5178050Z 18: <core::iter::adapters::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold
2020-05-22T15:48:09.5178420Z 19: rustc_mir_build::hair::pattern::_match::is_useful
2020-05-22T15:48:09.5178750Z 20: rustc_mir_build::hair::pattern::check_match::check_not_useful
2020-05-22T15:48:09.5179140Z 21: <rustc_mir_build::hair::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr
2020-05-22T15:48:09.5179540Z 22: <rustc_mir_build::hair::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr
2020-05-22T15:48:09.5179930Z 23: rustc_mir_build::hair::pattern::check_match::check_match
2020-05-22T15:48:09.5180310Z 24: rustc_middle::ty::query::<impl rustc_query_system::query::config::QueryAccessors<rustc_middle::ty::context::TyCtxt> for rustc_middle::ty::query::queries::check_match>::compute
2020-05-22T15:48:09.5180700Z 25: rustc_query_system::dep_graph::graph::DepGraph<K>::with_task_impl
2020-05-22T15:48:09.5181080Z 26: rustc_data_structures::stack::ensure_sufficient_stack
2020-05-22T15:48:09.5181460Z 27: rustc_query_system::query::plumbing::get_query_impl
2020-05-22T15:48:09.5181780Z 28: rustc_query_system::query::plumbing::ensure_query_impl
2020-05-22T15:48:09.5182150Z 29: rustc_session::utils::<impl rustc_session::session::Session>::time
2020-05-22T15:48:09.5182740Z 30: rustc_session::utils::<impl rustc_session::session::Session>::time
2020-05-22T15:48:09.5183130Z 31: rustc_interface::passes::analysis
2020-05-22T15:48:09.5183510Z 32: rustc_middle::ty::query::<impl rustc_query_system::query::config::QueryAccessors<rustc_middle::ty::context::TyCtxt> for rustc_middle::ty::query::queries::analysis>::compute
2020-05-22T15:48:09.5184600Z 33: rustc_query_system::dep_graph::graph::DepGraph<K>::with_task_impl
2020-05-22T15:48:09.5184980Z 34: rustc_query_system::query::plumbing::get_query_impl
2020-05-22T15:48:09.5185360Z 35: rustc_middle::ty::context::tls::enter_global
2020-05-22T15:48:09.5185690Z 36: rustc_interface::interface::run_compiler_in_existing_thread_pool
2020-05-22T15:48:09.5186050Z 37: scoped_tls::ScopedKey<T>::set
2020-05-22T15:48:09.5186410Z 38: rustc_ast::attr::with_globals
2020-05-22T15:48:09.5186760Z note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
2020-05-22T15:48:09.5187040Z
2020-05-22T15:48:09.5187400Z error: internal compiler error: unexpected panic
2020-05-22T15:48:09.5187710Z
2020-05-22T15:48:09.5188010Z note: the compiler unexpectedly panicked. this is a bug.
2020-05-22T15:48:09.5188330Z
2020-05-22T15:48:09.5189640Z note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
2020-05-22T15:48:09.5190010Z
2020-05-22T15:48:09.5190810Z note: rustc 1.45.0-nightly (9310e3bd4 2020-05-21) running on x86_64-apple-darwin
2020-05-22T15:48:09.5191130Z
2020-05-22T15:48:09.5191900Z note: compiler flags: -C embed-bitcode=no -C debuginfo=2 --crate-type lib
2020-05-22T15:48:09.5192280Z
2020-05-22T15:48:09.5192600Z note: some of the compiler flags provided by cargo are hidden
2020-05-22T15:48:09.5192870Z
2020-05-22T15:48:09.5193200Z query stack during panic:
2020-05-22T15:48:09.5193530Z #0 [check_match] processing `soft::Own::own_render`
2020-05-22T15:48:09.5194200Z #1 [analysis] running analysis passes on this crate
2020-05-22T15:48:09.5194640Z end of query stack
2020-05-22T15:48:09.5521870Z error: could not compile `gfx-backend-metal`.
Metadata
Metadata
Assignees
Labels
Area: Mid-level IR (MIR) - https://blog.rust-lang.org/2016/04/19/MIR.htmlCategory: This is a bug.Call for participation: This issue needs bisection: https://github.com/rust-lang/cargo-bisect-rustcCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Helping to "clean up" bugs with minimal examples and bisectionsOperating system: macOSHigh priorityRelevant to the compiler team, which will review and decide on the PR/issue.Performance or correctness regression from stable to nightly.