Skip to content

ICE while casting to iface #2904

Closed
Closed
@eholk

Description

@eholk
Contributor

The mostly relevant code is available at https://gist.github.com/3107024.

Here's the backtrace:

#0  upcall_fail (expr=0x1015db7c0 "non-exhaustive match failure", file=0x1015de680 "/Users/eholk/Documents/projects/mozilla/rust/src/rustc/middle/trans/impl.rs", line=231) at rust_upcall.cpp:95
#1  0x00000001011a4ccc in middle::trans::impl::get_vtable::_dc71a5a63df184bf::_03 ()
#2  0x000000010113f6cc in middle::trans::impl::trans_cast::_d59c45d8462f5cf8::_03 ()
#3  0x000000010113eab5 in middle::trans::base::trans_cast::_d59c45d8462f5cf8::_03 ()
#4  0x000000010114f1e5 in middle::trans::base::trans_expr::unrooted::_577f9584a2365cbf::_03 ()
#5  0x000000010111afd1 in middle::trans::base::trans_expr::_577f9584a2365cbf::_03 ()
#6  0x0000000101118f32 in middle::trans::base::trans_expr_save_in::_7845a5137b3e1ec5::_03 ()
#7  0x0000000101157057 in middle::trans::base::init_local::_66ac34f3c23c4796::_03 ()
#8  0x0000000101158152 in middle::trans::base::trans_stmt::anon ()
#9  0x0000000101157ff7 in middle::trans::base::trans_stmt::_5490d51f5d1fb451::_03 ()
#10 0x00000001011233d1 in middle::trans::base::trans_block::_4e8a1ad43913b23e::_03 ()
#11 0x000000010115ed89 in middle::trans::base::trans_closure::_a2a013b454248e32::_03 ()
#12 0x000000010112c9dc in middle::trans::base::trans_fn::_41812f278dc1d43d::_03 ()
#13 0x000000010110dd99 in middle::trans::base::monomorphic_fn::_a6c1c59d8b45e1a5::_03 ()
#14 0x0000000101138fae in middle::trans::base::lval_static_fn_inner::_5c96249ca9f2332b::_03 ()
#15 0x00000001011388fd in middle::trans::base::lval_static_fn::_9371e1fd16310fee::_03 ()
#16 0x000000010113bda6 in middle::trans::base::trans_var::_1f467dd0bde628ee::_03 ()
#17 0x000000010113ac7c in middle::trans::base::trans_path::_afebb1f020e79f4f::_03 ()
#18 0x000000010113db66 in middle::trans::base::trans_callee::_4c602ef884ac7d49::_03 ()
#19 0x000000010114b24a in middle::trans::base::trans_call_inner::anon ()
#20 0x000000010114b059 in middle::trans::base::with_scope::_ac7ce9e92fdb5950::_03 ()
#21 0x000000010114447c in middle::trans::base::trans_call::_a4aea8eeb13a8bc1::_03 ()
#22 0x000000010114f0ef in middle::trans::base::trans_expr::unrooted::_577f9584a2365cbf::_03 ()
#23 0x000000010111afd1 in middle::trans::base::trans_expr::_577f9584a2365cbf::_03 ()
#24 0x0000000101157f4d in middle::trans::base::trans_stmt::_5490d51f5d1fb451::_03 ()
#25 0x00000001011233d1 in middle::trans::base::trans_block::_4e8a1ad43913b23e::_03 ()
#26 0x000000010115ed50 in middle::trans::base::trans_closure::_a2a013b454248e32::_03 ()
#27 0x000000010112c9dc in middle::trans::base::trans_fn::_41812f278dc1d43d::_03 ()
#28 0x00000001011371ea in middle::trans::base::trans_item::_4ae34bae7271ddbc::_03 ()
#29 0x0000000101165588 in middle::trans::base::trans_mod::_8dc9b54e66a866c7::_03 ()
#30 0x0000000101136568 in middle::trans::base::trans_item::_4ae34bae7271ddbc::_03 ()
#31 0x0000000101165588 in middle::trans::base::trans_mod::_8dc9b54e66a866c7::_03 ()
#32 0x0000000101136568 in middle::trans::base::trans_item::_4ae34bae7271ddbc::_03 ()
#33 0x0000000101165588 in middle::trans::base::trans_mod::_8dc9b54e66a866c7::_03 ()
#34 0x000000010117c34b in middle::trans::base::trans_crate::_7f34702f6c94b751::_03 ()
#35 0x0000000101563f41 in driver::driver::compile_upto::anon ()
#36 0x0000000101561f6b in driver::driver::compile_upto::_7b15545694d6799f::_03 ()
#37 0x000000010156425b in driver::driver::compile_input::_49621f9a72da8787::_03 ()
#38 0x0000000100004b2a in run_compiler::_2f4daf693aaf6eee::_00 ()
#39 0x000000010000ad0e in monitor::anon ()
#40 0x000000010000a1c8 in task::try586::anon ()
#41 0x0000000100040595 in task::spawn_raw::anon ()
#42 0x0000000101a786c5 in task_start_wrapper (a=0x1015db7c0) at rust_task.cpp:169

I ran into this while trying to work around #2903.

Activity

bblum

bblum commented on Jul 16, 2012

@bblum
Contributor

Found during ICFP (#2928).

catamorphism

catamorphism commented on Aug 3, 2012

@catamorphism
Contributor

The entire file compiles for me (if I add a main fn), modulo updates for strings and adding an "owned" bound to read_board_grid. So this appears to have been accidentally-fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-codegenArea: Code generationI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @eholk@catamorphism@bblum

        Issue actions

          ICE while casting to iface · Issue #2904 · rust-lang/rust