Closed
Description
Repro
git clone https://github.com/rust-lang/rustfmt
cd rustfmt
git checkout 2d6a968d52b13b75fc3799f50020a34efd480a28
CFG_RELEASE=nightly CFG_RELEASE_CHANNEL=nightly cargo +master check
Meta
rustc --version --verbose
:
rustc is @ 6bdae9e
rustc 1.49.0-nightly (6bdae9edd 2020-10-29)
binary: rustc
commit-hash: 6bdae9edd0cc099daa6038bca469dc09b6fc078a
commit-date: 2020-10-29
host: x86_64-unknown-linux-gnu
release: 1.49.0-nightly
Error output
Checking rustc-ap-rustc_ast_passes v686.0.0
Checking rustc-ap-rustc_expand v686.0.0
error: internal compiler error: compiler/rustc_mir_build/src/thir/pattern/_match.rs:934:18: trying to compare incompatible constructors Single and Str(Const { ty: &str, val: Value(Slice { data: Allocation { bytes: [109, 97, 120, 95, 119, 105, 100, 116, 104], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [511], len: Size { raw: 9 } }, size: Size { raw: 9 }, align: Align { pow2: 0 }, mutability: Not, extra: () }, start: 0, end: 9 }) })
thread 'rustc' panicked at 'Box<Any>', compiler/rustc_errors/src/lib.rs:945:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.49.0-nightly (6bdae9edd 2020-10-29) running on x86_64-unknown-linux-gnu
note: compiler flags: -C embed-bitcode=no -C debuginfo=2 -C incremental --crate-type lib
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [check_match] match-checking `config::ConfigSetter::<'a>::max_width`
#1 [analysis] running analysis passes on this crate
end of query stack
error: aborting due to previous error
error: could not compile `rustfmt-nightly`
To learn more, run the command again with --verbose.
Backtrace
error: internal compiler error: compiler/rustc_mir_build/src/thir/pattern/_match.rs:934:18: trying to compare incompatible constructors Single and Str(Const { ty: &str, val: Value(Slice { data: Allocation { bytes: [109, 97, 120, 95, 119, 105, 100, 116, 104], relocations: Relocations(SortedMap { data: [] }), init_mask: InitMask { blocks: [511], len: Size { raw: 9 } }, size: Size { raw: 9 }, align: Align { pow2: 0 }, mutability: Not, extra: () }, start: 0, end: 9 }) })
thread 'rustc' panicked at 'Box<Any>', compiler/rustc_errors/src/lib.rs:945:9
stack backtrace:
0: 0x7f440e94a5f0 - std::backtrace_rs::backtrace::libunwind::trace::h448c56741b6011d3
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:100:5
1: 0x7f440e94a5f0 - std::backtrace_rs::backtrace::trace_unsynchronized::h881b9d30a8a89a0c
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x7f440e94a5f0 - std::sys_common::backtrace::_print_fmt::h720a2f61f75b9f58
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/sys_common/backtrace.rs:67:5
3: 0x7f440e94a5f0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h8d62bbfda6d5c836
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/sys_common/backtrace.rs:46:22
4: 0x7f440e9ba52c - core::fmt::write::h1857a60b204f1b6a
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/core/src/fmt/mod.rs:1078:17
5: 0x7f440e93c252 - std::io::Write::write_fmt::h16a9fe7680ac245c
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/io/mod.rs:1518:15
6: 0x7f440e94f5a5 - std::sys_common::backtrace::_print::h9ba51a6db618de7d
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/sys_common/backtrace.rs:49:5
7: 0x7f440e94f5a5 - std::sys_common::backtrace::print::h5f20e41c85e91716
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/sys_common/backtrace.rs:36:9
8: 0x7f440e94f5a5 - std::panicking::default_hook::{{closure}}::h8d48653392f3b04c
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/panicking.rs:208:50
9: 0x7f440e94f248 - std::panicking::default_hook::hb3948d1f74b6ff4c
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/panicking.rs:227:9
10: 0x7f440f218988 - rustc_driver::report_ice::h1ddbc5609a6e1f37
11: 0x7f43ffdb18d6 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd2c74aab54599340
at /home/matthias/.rustup/toolchains/master/lib/rustlib/src/rust/library/alloc/src/boxed.rs:1321:9
12: 0x7f43ffdcff6b - proc_macro::bridge::client::<impl proc_macro::bridge::Bridge>::enter::{{closure}}::{{closure}}::h364b0f4905eb955d
at /home/matthias/.rustup/toolchains/master/lib/rustlib/src/rust/library/proc_macro/src/bridge/client.rs:320:21
13: 0x7f440e94fea6 - std::panicking::rust_panic_with_hook::h55d23fef0ad751bc
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/panicking.rs:597:17
14: 0x7f441221414d - std::panicking::begin_panic::{{closure}}::h4b123e1d8e3ae463
15: 0x7f4412214086 - std::sys_common::backtrace::__rust_end_short_backtrace::ha21fec08f03d728b
16: 0x7f441221411f - std::panicking::begin_panic::hc0c81fab1e0acd00
17: 0x7f4412226080 - rustc_errors::HandlerInner::bug::h26f9bc1a7147687e
18: 0x7f4412224bd0 - rustc_errors::Handler::bug::h2149bffe74600666
19: 0x7f4411c826d4 - rustc_middle::util::bug::opt_span_bug_fmt::{{closure}}::hb4ddd0d3902006f3
20: 0x7f4411c7c1fb - rustc_middle::ty::context::tls::with_opt::{{closure}}::ha7f81bc36cab3c9f
21: 0x7f4411c7bbb2 - rustc_middle::ty::context::tls::with_opt::hf0c2c2aff96e53ba
22: 0x7f4411c825f9 - rustc_middle::util::bug::opt_span_bug_fmt::hc7cbb029c2646db9
23: 0x7f4411c8256e - rustc_middle::util::bug::bug_fmt::hb51c412c48cda8bb
24: 0x7f4410445238 - rustc_mir_build::thir::pattern::_match::Matrix::specialize_constructor::h36673621382da348
25: 0x7f441040d98a - <core::iter::adapters::Map<I,F> as core::iter::traits::iterator::Iterator>::try_fold::h8ec38e56f7f75922
26: 0x7f441044aded - rustc_mir_build::thir::pattern::_match::is_useful::hf8efd6153416cf2d
27: 0x7f44103df5f8 - <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr::h865c9f6d42685550
28: 0x7f44103df27c - <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr::h865c9f6d42685550
29: 0x7f44103e83fb - rustc_hir::intravisit::walk_expr::hd0093ab50ae5a8d4
30: 0x7f44103df27c - <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr::h865c9f6d42685550
31: 0x7f44103df27c - <rustc_mir_build::thir::pattern::check_match::MatchVisitor as rustc_hir::intravisit::Visitor>::visit_expr::h865c9f6d42685550
32: 0x7f44103defa3 - rustc_mir_build::thir::pattern::check_match::check_match::h2d5b60d42651dc41
33: 0x7f440f46b9c9 - 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::h3dd4584521cdb95e
34: 0x7f440f40b1da - rustc_middle::dep_graph::<impl rustc_query_system::dep_graph::DepKind for rustc_middle::dep_graph::dep_node::DepKind>::with_deps::h95dd3718ab01c33b
35: 0x7f440f3d0bc9 - rustc_query_system::dep_graph::graph::DepGraph<K>::with_task_impl::h0352e09bc9ab8a0b
36: 0x7f440f436ce4 - rustc_data_structures::stack::ensure_sufficient_stack::h3626f02a47d49f69
37: 0x7f440f3c74b8 - rustc_query_system::query::plumbing::get_query_impl::hfaed35f7e6414273
38: 0x7f440f3c8832 - rustc_query_system::query::plumbing::ensure_query_impl::ha7327a13b80a3079
39: 0x7f440f467a79 - rustc_interface::passes::analysis::h78326215bfd650a0
40: 0x7f440f25791b - rustc_middle::ty::query::<impl rustc_query_system::query::config::QueryAccessors<rustc_middle::ty::context::TyCtxt> for rustc_middle::ty::query::queries::analysis>::compute::hf8d4bc54d08537f3
41: 0x7f440f19d838 - rustc_middle::dep_graph::<impl rustc_query_system::dep_graph::DepKind for rustc_middle::dep_graph::dep_node::DepKind>::with_deps::hcb29c3d8995d5298
42: 0x7f440f237f24 - rustc_query_system::dep_graph::graph::DepGraph<K>::with_task_impl::h6d03accb53ed1239
43: 0x7f440f23419f - rustc_middle::ty::query::plumbing::<impl rustc_query_system::query::QueryContext for rustc_middle::ty::context::TyCtxt>::start_query::{{closure}}::{{closure}}::{{closure}}::h947bb326d17d8606
44: 0x7f440f1c1308 - rustc_query_system::query::plumbing::get_query_impl::h448d10ab90370983
45: 0x7f440f25a9df - rustc_interface::passes::QueryContext::enter::hbf7a36e966e91449
46: 0x7f440f235826 - rustc_interface::queries::<impl rustc_interface::interface::Compiler>::enter::h25b522245624a405
47: 0x7f440f1f8eff - rustc_span::with_source_map::h7455fffe3cd153a4
48: 0x7f440f2309c1 - scoped_tls::ScopedKey<T>::set::h8ae8151712a551fd
49: 0x7f440f23b0f5 - std::sys_common::backtrace::__rust_begin_short_backtrace::h26de371bc27662fc
50: 0x7f440f1a2b18 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h80d1a8eb7971174b
51: 0x7f440e95eeaa - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h9e7afb7a0a438236
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/alloc/src/boxed.rs:1307:9
52: 0x7f440e95eeaa - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h70c646c4271337a1
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/alloc/src/boxed.rs:1307:9
53: 0x7f440e95eeaa - std::sys::unix::thread::Thread::new::thread_start::h35d2b8d36f210d02
at /rustc/6bdae9edd0cc099daa6038bca469dc09b6fc078a/library/std/src/sys/unix/thread.rs:89:17
54: 0x7f440e85a3e9 - start_thread
55: 0x7f440e777293 - __GI___clone
56: 0x0 - <unknown>
note: the compiler unexpectedly panicked. this is a bug.
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: rustc 1.49.0-nightly (6bdae9edd 2020-10-29) running on x86_64-unknown-linux-gnu
note: compiler flags: -C embed-bitcode=no -C debuginfo=2 -C incremental --crate-type lib
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [check_match] match-checking `config::ConfigSetter::<'a>::max_width`
#1 [analysis] running analysis passes on this crate
end of query stack
error: aborting due to previous error
error: could not compile `rustfmt-nightly`
To learn more, run the command again with --verbose.
Metadata
Metadata
Assignees
Labels
Relating to exhaustiveness / usefulness checking of patternsCategory: This is a bug.Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Critical priorityRelevant to the compiler team, which will review and decide on the PR/issue.Performance or correctness regression from stable to nightly.