Closed
Description
Attempting to use destructuring with a primitive type inside a match statement causes an ICE. Tested with rustc 1.2.0-nightly (a951569 2015-06-20)
fn main() {
match 'a' {
char{ch} => true
}
}
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 'attempted .def_id() on DefPrimTy', ../src/librustc/middle/def.rs:156
stack backtrace:
1: 0x7fb7957e83d3 - sys::backtrace::write::hac6f7844a2c08518pqs
2: 0x7fb7957f0551 - panicking::on_panic::he3a077dab5880a1969w
3: 0x7fb7957af28a - rt::unwind::begin_unwind_inner::h07f84ceedf6e11d3KPw
4: 0x7fb7935d1c8e - rt::unwind::begin_unwind::h13255040820259946381
5: 0x7fb7936c5bdf - middle::def::Def::def_id::hbddb03ceb4e35b96x4o
6: 0x7fb794f15c00 - check::_match::check_pat_struct::h4d8ab6955466c3f7ABb
7: 0x7fb794f003f5 - check::_match::check_pat::h2afaa939dba7cd43V5a
8: 0x7fb794f16aea - check::_match::check_match::h694e62feffcd62d04vb
9: 0x7fb794fce8c4 - check::check_expr_with_unifier::h7066641246964661603
10: 0x7fb794fa401c - check::check_block_with_expected::h097ab308114fc8e5qbs
11: 0x7fb794f84854 - check::check_fn::h5d785f05bfa9afaduNn
12: 0x7fb794f9ea48 - check::check_bare_fn::h5e02becc8c48918ddDn
13: 0x7fb794f9c824 - check::check_item_body::h151ab0b91a1cac23P3n
14: 0x7fb794f9e634 - check::check_item_types::h8e4c9d4fdf7fc8c3KAn
15: 0x7fb79505ee72 - check_crate::h100173bd7b2e3800jRC
16: 0x7fb795d59072 - driver::phase_3_run_analysis_passes::closure.15806
17: 0x7fb795d562fe - middle::ty::with_ctxt::h14743504589873556158
18: 0x7fb795d50f89 - driver::phase_3_run_analysis_passes::h12040857529898966678
19: 0x7fb795d32d64 - driver::compile_input::hba3e26f2cba2be27Tba
20: 0x7fb795e1a7da - run_compiler::h3b9f1d0853ded84547b
21: 0x7fb795e17db6 - boxed::F.FnBox<A>::call_box::h14102988289798375631
22: 0x7fb795e175b9 - rt::unwind::try::try_fn::h11631987993001963535
23: 0x7fb79586ced8 - rust_try_inner
24: 0x7fb79586cec5 - rust_try
25: 0x7fb7957db147 - rt::unwind::try::inner_try::h18f1f3c9b9ec8956DLw
26: 0x7fb795e177d9 - boxed::F.FnBox<A>::call_box::h12282811619045320965
27: 0x7fb7957ef181 - sys::thread::Thread::new::thread_start::h6ee35face9d3fb15AVv
28: 0x7fb78f3946a9 - start_thread