Closed
Description
When compiling the lalrpop
crate as a dependency for my project, I got an error message saying that the compiler panicked. As per the error message, I'm submitting a bug report.
I'm not sure exactly what code caused the compiler to panic unfortunately, as the error occurred when cargo was compiling a dependency.
The crate is version 0.11.0
of lalrpop
, and the compiler version is the latest nightly (rustc 1.9.0-nightly (d5a91e6 2016-03-26).
The exact error message (including a backtrace) is the following:
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 'assertion failed: declare::get_defined_value(ccx, &symbol).is_none()', ../src/librustc_trans/monomorphize.rs:94
stack backtrace:
1: 0x7f7e5633d300 - std::sys::backtrace::tracing::imp::write::h63529ecac330b5bc
2: 0x7f7e5634a9db - std::panicking::default_hook::_$u7b$$u7b$closure$u7d$$u7d$::h0e99487804ecdaa3
3: 0x7f7e5634a577 - std::panicking::default_hook::h1f0a2403a716c4a6
4: 0x7f7e5630e2ff - std::sys_common::unwind::begin_unwind_inner::heae36551373e36bd
5: 0x7f7e5557afef - std::sys_common::unwind::begin_unwind::h422885d31fe250dc
6: 0x7f7e55622b8d - rustc_trans::callee::get_fn::h16d5e12c52696e18
7: 0x7f7e555cd920 - rustc_trans::callee::Callee::def::h6bfa8c0d18edb04c
8: 0x7f7e55693597 - rustc_trans::glue::trans_struct_drop::h342318524db364ab
9: 0x7f7e55690357 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
10: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
11: 0x7f7e5569478a - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
12: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
13: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
14: 0x7f7e5569651f - rustc_trans::base::iter_structural_ty::iter_variant::he70ba81279b20c92
15: 0x7f7e55695136 - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
16: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
17: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
18: 0x7f7e5569651f - rustc_trans::base::iter_structural_ty::iter_variant::he70ba81279b20c92
19: 0x7f7e55695136 - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
20: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
21: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
22: 0x7f7e5569478a - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
23: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
24: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
25: 0x7f7e5569651f - rustc_trans::base::iter_structural_ty::iter_variant::he70ba81279b20c92
26: 0x7f7e55695136 - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
27: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
28: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
29: 0x7f7e5569651f - rustc_trans::base::iter_structural_ty::iter_variant::he70ba81279b20c92
30: 0x7f7e55695136 - rustc_trans::base::iter_structural_ty::hcad56d80bbb4b302
31: 0x7f7e55690457 - rustc_trans::glue::get_drop_glue_core::ha9c0e47754271034
32: 0x7f7e5563bbe5 - rustc_trans::glue::drop_ty_core::hf833c0eb521a39ed
33: 0x7f7e5563a4b0 - _<cleanup..DropValue<'tcx> as cleanup..Cleanup<'tcx>>::trans::h012c5d4dc25d481b
34: 0x7f7e55639a57 - _<common..FunctionContext<'blk, 'tcx> as cleanup..CleanupHelperMethods<'blk, 'tcx>>::trans_cleanups_to_exit_scope::h25235d0ebda5e4a3
35: 0x7f7e5563b15b - _<common..FunctionContext<'blk, 'tcx> as cleanup..CleanupHelperMethods<'blk, 'tcx>>::get_or_create_landing_pad::h1b3312c7060bb49f
36: 0x7f7e555d7133 - _<common..FunctionContext<'blk, 'tcx> as cleanup..CleanupMethods<'blk, 'tcx>>::get_landing_pad::h70c61d90463d8794
37: 0x7f7e555d6d20 - rustc_trans::base::invoke::h4b34892eb6150166
38: 0x7f7e555ccb4a - rustc_trans::callee::Callee::call::h721e5fc65601b1ff
39: 0x7f7e556803ee - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
40: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
41: 0x7f7e556dc3d6 - rustc_trans::tvec::write_content::h5db778045dadacd0
42: 0x7f7e5567fbda - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
43: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
44: 0x7f7e556b09ee - rustc_trans::_match::trans_match_inner::h69c7777311b7e300
45: 0x7f7e5567eaa5 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
46: 0x7f7e5567e0ed - rustc_trans::expr::trans_unadjusted::h3a5a0d9e57f899c4
47: 0x7f7e55635639 - rustc_trans::expr::trans::h5e1eb158681cf248
48: 0x7f7e55687780 - rustc_trans::expr::trans_addr_of::h97d12027141a36bf
49: 0x7f7e5567e40f - rustc_trans::expr::trans_unadjusted::h3a5a0d9e57f899c4
50: 0x7f7e55635639 - rustc_trans::expr::trans::h5e1eb158681cf248
51: 0x7f7e5563439e - rustc_trans::callee::trans_args::had4ad3ae9fae9584
52: 0x7f7e555cca92 - rustc_trans::callee::Callee::call::h721e5fc65601b1ff
53: 0x7f7e556803ee - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
54: 0x7f7e5567e0ed - rustc_trans::expr::trans_unadjusted::h3a5a0d9e57f899c4
55: 0x7f7e55635639 - rustc_trans::expr::trans::h5e1eb158681cf248
56: 0x7f7e5563439e - rustc_trans::callee::trans_args::had4ad3ae9fae9584
57: 0x7f7e555cca92 - rustc_trans::callee::Callee::call::h721e5fc65601b1ff
58: 0x7f7e556803ee - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
59: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
60: 0x7f7e555f4803 - rustc_trans::expr::trans_adt::h7f5fb4ac92e70dd2
61: 0x7f7e55680074 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
62: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
63: 0x7f7e555f4803 - rustc_trans::expr::trans_adt::h7f5fb4ac92e70dd2
64: 0x7f7e555f3fb8 - rustc_trans::base::trans_named_tuple_constructor::h666ee39620d22e93
65: 0x7f7e555cc67e - rustc_trans::callee::Callee::call::h721e5fc65601b1ff
66: 0x7f7e556803ee - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
67: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
68: 0x7f7e55683347 - rustc_trans::expr::trans_rvalue_stmt_unadjusted::h60678948dec10463
69: 0x7f7e555f620f - rustc_trans::expr::trans_into::h0886054c82efd10c
70: 0x7f7e556b09ee - rustc_trans::_match::trans_match_inner::h69c7777311b7e300
71: 0x7f7e5567eaa5 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
72: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
73: 0x7f7e556ba29d - rustc_trans::_match::mk_binding_alloca::hd19203cafc37a598
74: 0x7f7e555d832d - rustc_trans::base::init_local::h617967a698cd0329
75: 0x7f7e555ed794 - rustc_trans::controlflow::trans_block::h78eebe402333d4c3
76: 0x7f7e5567fb10 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
77: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
78: 0x7f7e555edabd - rustc_trans::controlflow::trans_block::h78eebe402333d4c3
79: 0x7f7e555ebe37 - rustc_trans::base::trans_closure::hce4cad2baba38a75
80: 0x7f7e5563df53 - rustc_trans::closure::trans_closure_expr::h9e5d0907b8a1d92b
81: 0x7f7e55681073 - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
82: 0x7f7e5567e0ed - rustc_trans::expr::trans_unadjusted::h3a5a0d9e57f899c4
83: 0x7f7e55635639 - rustc_trans::expr::trans::h5e1eb158681cf248
84: 0x7f7e5563439e - rustc_trans::callee::trans_args::had4ad3ae9fae9584
85: 0x7f7e555cca92 - rustc_trans::callee::Callee::call::h721e5fc65601b1ff
86: 0x7f7e556803ee - rustc_trans::expr::trans_rvalue_dps_unadjusted::hd53c161e5ecd9e4f
87: 0x7f7e555f6234 - rustc_trans::expr::trans_into::h0886054c82efd10c
88: 0x7f7e555edabd - rustc_trans::controlflow::trans_block::h78eebe402333d4c3
89: 0x7f7e555ebe37 - rustc_trans::base::trans_closure::hce4cad2baba38a75
90: 0x7f7e555ee380 - rustc_trans::base::trans_fn::he5c9f3096cef336c
91: 0x7f7e555f9019 - rustc_trans::base::trans_item::h2e00a2a37f0adf00
92: 0x7f7e556123fb - _<base..TransItemsWithinModVisitor<'a, 'tcx> as rustc_front..intravisit..Visitor<'v>>::visit_item::h42989a4ea480287a
93: 0x7f7e556103f7 - rustc_front::intravisit::walk_item::h7a37cbc827b77b8a
94: 0x7f7e555ffc0f - rustc_trans::base::trans_crate::h5d7d0ab38cd208e7
95: 0x7f7e56895078 - rustc_driver::driver::phase_4_translate_to_llvm::hc60a4fd01d59eaae
96: 0x7f7e56893905 - rustc_driver::driver::compile_input::_$u7b$$u7b$closure$u7d$$u7d$::h96aedfca5f48d7d6
97: 0x7f7e568904e8 - rustc_driver::driver::phase_3_run_analysis_passes::_$u7b$$u7b$closure$u7d$$u7d$::h1d5b5af335ae8126
98: 0x7f7e5688a49b - rustc::ty::context::TyCtxt::create_and_enter::h2656c85b5a638887
99: 0x7f7e56886f19 - rustc_driver::driver::phase_3_run_analysis_passes::h432eb92c0e12df32
100: 0x7f7e56859807 - rustc_driver::driver::compile_input::hb8958b270f32a505
... <frames omitted>
error: Could not compile `lalrpop`.
To learn more, run the command again with --verbose.
In the event that this isn't actually a compiler bug, sorry about the hassle. If it is, let me know if there's anything else I can do to help!