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

ICE when attempting to destructure a match pattern with a primitive type #26459

Closed
robertknight opened this issue Jun 20, 2015 · 1 comment
Closed
Labels
I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

Comments

@robertknight
Copy link
Contributor

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
@daboross
Copy link
Contributor

This seems to also occur in any kind of pattern matching, even in a simple thing like:

fn main() {
    let u8{x} = 3;
}

@jdm jdm added the I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ label Jun 21, 2015
@apasel422 apasel422 mentioned this issue Oct 24, 2015
bors added a commit that referenced this issue Oct 25, 2015
Closes #22781.
Closes #23891.
Closes #24956.
Closes #25145.
Closes #25693.
Closes #26095.
Closes #26459.
Closes #27320.
Closes #27895.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️
Projects
None yet
Development

No branches or pull requests

3 participants