Skip to content

ICE in stable 1.9 - ERROR:rbml::reader: failed to find block with tag 32 | [Avoided by removing type decl from closure scope?] #34027

Closed
@mitchmindtree

Description

@mitchmindtree

Version: rustc 1.9.0 (e4e8b6668 2016-05-18). Edit: According to travis this also occurs on the current nightly.

Specifically, the ICE occurs while compiling this conrod example in this commit.

Curiously, the ICE goes away when I remove the call to .set on the TextBox widget here. I've not yet been able to reduce this case, but will post again if I do.

This same code compiles without issues on 1.8 - the ICE only appeared after updating to 1.9.

Here is the backtrace:

Compiling conrod v0.35.0 (file:///Users/Mitch/Programming/Rust/conrod)
ERROR:rbml::reader: failed to find block with tag 32
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
note: run with `RUST_BACKTRACE=1` for a backtrace
thread 'rustc' panicked at 'explicit panic', ../src/librbml/lib.rs:436
stack backtrace:
   1:        0x1138723a8 - std::sys::backtrace::tracing::imp::write::h4c73fcd3363076f5
   2:        0x11387e7f5 - std::panicking::default_hook::_$u7b$$u7b$closure$u7d$$u7d$::h0422dbb3077e6747
   3:        0x11387e32f - std::panicking::default_hook::haac48fa641db8fa2
   4:        0x113842f86 - std::sys_common::unwind::begin_unwind_inner::h39d40f52add53ef7
   5:        0x1136949a4 - std::sys_common::unwind::begin_unwind::hd78480d5ec5c51b2
   6:        0x113692474 - rbml::reader::get_doc::hdb38d8b870a9741e
   7:        0x10f99299d - rustc_metadata::decoder::item_name::h3555f424e252b80a
   8:        0x10f9de58f - rustc_metadata::csearch::_<impl rustc..middle..cstore..CrateStore<'tcx> for cstore..CStore>::item_name::h5a2f704e44fa63dd
   9:        0x11248552b - rustc::ty::item_path::_<impl ty..context..TyCtxt<'tcx>>::push_item_path::h2f534fe42b7ac460
  10:        0x112485c67 - rustc::ty::item_path::_<impl ty..context..TyCtxt<'tcx>>::push_item_path::h2f534fe42b7ac460
  11:        0x1122408d6 - rustc::ty::item_path::_<impl ty..context..TyCtxt<'tcx>>::item_path_str::hdfe5253566d88e9d
  12:        0x10fe3febd - rustc_trans::type_of::llvm_type_name::hc7d62319533c1664
  13:        0x10fd199ea - rustc_trans::type_of::in_memory_type_of::h3452b62d9f897a08
  14:        0x10fd1db53 - rustc_trans::base::alloc_ty_init::h8fcff585abc6d109
  15:        0x10fe18bad - rustc_trans::_match::mk_binding_alloca::hb33a12c04b932154
  16:        0x10fd315c8 - rustc_trans::base::init_local::hc7657c54dfb70dae
  17:        0x10fd47f3a - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  18:        0x10fdd9bf0 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  19:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  20:        0x10fd4821e - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  21:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  22:        0x10fd99287 - rustc_trans::closure::trans_closure_expr::ha3ce342c7e1142af
  23:        0x10fddb1ca - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  24:        0x10fdd7f83 - rustc_trans::expr::trans_unadjusted::h0d70d7046e42f3dd
  25:        0x10fd90708 - rustc_trans::expr::trans::h70c640c22e74aeac
  26:        0x10fd8f38e - rustc_trans::callee::trans_args::h612d1760ca9c25c5
  27:        0x10fd24a0d - rustc_trans::callee::Callee::call::h96992640d29984f5
  28:        0x10fdd9b3f - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  29:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  30:        0x10fd4821e - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  31:        0x10fdd9bf0 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  32:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  33:        0x10fd4821e - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  34:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  35:        0x10fd99287 - rustc_trans::closure::trans_closure_expr::ha3ce342c7e1142af
  36:        0x10fddb1ca - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  37:        0x10fdd7f83 - rustc_trans::expr::trans_unadjusted::h0d70d7046e42f3dd
  38:        0x10fd90708 - rustc_trans::expr::trans::h70c640c22e74aeac
  39:        0x10fd8f38e - rustc_trans::callee::trans_args::h612d1760ca9c25c5
  40:        0x10fd24a0d - rustc_trans::callee::Callee::call::h96992640d29984f5
  41:        0x10fdd9b3f - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  42:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  43:        0x10fd4821e - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  44:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  45:        0x10fd99287 - rustc_trans::closure::trans_closure_expr::ha3ce342c7e1142af
  46:        0x10fddb1ca - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  47:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  48:        0x10fe18c54 - rustc_trans::_match::mk_binding_alloca::hb33a12c04b932154
  49:        0x10fd315c8 - rustc_trans::base::init_local::hc7657c54dfb70dae
  50:        0x10fd47f3a - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  51:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  52:        0x10fd48911 - rustc_trans::base::trans_fn::he1c838fa1dbfdc03
  53:        0x10fd7b52e - rustc_trans::callee::get_fn::haaf760d478d95498
  54:        0x10fd261b1 - rustc_trans::callee::Callee::def::he88e0427a7068fef
  55:        0x10fd76ad0 - rustc_trans::callee::Callee::method_call::h48772eaa2f745a02
  56:        0x10fdd9aa7 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  57:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  58:        0x10fdb5f62 - rustc_trans::controlflow::trans_stmt_semi::hcba83f2a6075f097
  59:        0x10fd47f16 - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  60:        0x10fdd9bf0 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  61:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  62:        0x10fe18c54 - rustc_trans::_match::mk_binding_alloca::hb33a12c04b932154
  63:        0x10fd315c8 - rustc_trans::base::init_local::hc7657c54dfb70dae
  64:        0x10fd47f3a - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  65:        0x10fdd9bf0 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  66:        0x10fdd7f83 - rustc_trans::expr::trans_unadjusted::h0d70d7046e42f3dd
  67:        0x10fd90708 - rustc_trans::expr::trans::h70c640c22e74aeac
  68:        0x10fd31687 - rustc_trans::base::init_local::hc7657c54dfb70dae
  69:        0x10fd47f3a - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  70:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  71:        0x10fd48911 - rustc_trans::base::trans_fn::he1c838fa1dbfdc03
  72:        0x10fd7b52e - rustc_trans::callee::get_fn::haaf760d478d95498
  73:        0x10fd25b27 - rustc_trans::callee::Callee::def::he88e0427a7068fef
  74:        0x10fddb474 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  75:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  76:        0x10fdb5f62 - rustc_trans::controlflow::trans_stmt_semi::hcba83f2a6075f097
  77:        0x10fd47f16 - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  78:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  79:        0x10fd48911 - rustc_trans::base::trans_fn::he1c838fa1dbfdc03
  80:        0x10fd7b52e - rustc_trans::callee::get_fn::haaf760d478d95498
  81:        0x10fd261b1 - rustc_trans::callee::Callee::def::he88e0427a7068fef
  82:        0x10fd76ad0 - rustc_trans::callee::Callee::method_call::h48772eaa2f745a02
  83:        0x10fdd9aa7 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  84:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  85:        0x10fdb5f62 - rustc_trans::controlflow::trans_stmt_semi::hcba83f2a6075f097
  86:        0x10fd47f16 - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  87:        0x10fd46780 - rustc_trans::base::trans_closure::h3bda42021fe9c927
  88:        0x10fd48911 - rustc_trans::base::trans_fn::he1c838fa1dbfdc03
  89:        0x10fd7b52e - rustc_trans::callee::get_fn::haaf760d478d95498
  90:        0x10fd261b1 - rustc_trans::callee::Callee::def::he88e0427a7068fef
  91:        0x10fd76ad0 - rustc_trans::callee::Callee::method_call::h48772eaa2f745a02
  92:        0x10fdd9aa7 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  93:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  94:        0x10fdb5f62 - rustc_trans::controlflow::trans_stmt_semi::hcba83f2a6075f097
  95:        0x10fd47f16 - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
  96:        0x10fdd9bf0 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hfc708f6d884d180a
  97:        0x10fd50b35 - rustc_trans::expr::trans_into::h42fcfc33be1fd4c2
  98:        0x10fe18c54 - rustc_trans::_match::mk_binding_alloca::hb33a12c04b932154
  99:        0x10fd315c8 - rustc_trans::base::init_local::hc7657c54dfb70dae
  100:        0x10fd47f3a - rustc_trans::controlflow::trans_block::hbf71b2a467189fc4
 ... <frames omitted>

This could be related to #32696.

Metadata

Metadata

Assignees

Labels

A-metadataArea: Crate metadataI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️P-highHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-stablePerformance or correctness regression from one stable version to another.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions