Skip to content

[NLL] dynamic-drop.rs test ICEs #47585

Closed
Closed
@spastorino

Description

@spastorino
$ RUST_BACKTRACE=full rustc +stage1 src/test/run-pass/dynamic-drop.rs -Znll -Zborrowck=mir -Ztwo-phase-borrows
warning: variable `x` is assigned to, but never used
   --> src/test/run-pass/dynamic-drop.rs:187:10
    |
187 |     let (x, y, z);
    |          ^
    |
    = note: #[warn(unused_variables)] on by default
    = note: to avoid this warning, consider using `_x` instead

warning: variable `y` is assigned to, but never used
   --> src/test/run-pass/dynamic-drop.rs:187:13
    |
187 |     let (x, y, z);
    |             ^
    |
    = note: to avoid this warning, consider using `_y` instead

warning: variable `z` is assigned to, but never used
   --> src/test/run-pass/dynamic-drop.rs:187:16
    |
187 |     let (x, y, z);
    |                ^
    |
    = note: to avoid this warning, consider using `_z` instead

warning: value assigned to `x` is never read
   --> src/test/run-pass/dynamic-drop.rs:188:5
    |
188 |     x = a.alloc();
    |     ^
    |
    = note: #[warn(unused_assignments)] on by default

warning: value assigned to `y` is never read
   --> src/test/run-pass/dynamic-drop.rs:189:5
    |
189 |     y = 5;
    |     ^

warning: value assigned to `z` is never read
   --> src/test/run-pass/dynamic-drop.rs:190:5
    |
190 |     z = a.alloc();
    |     ^

error: internal compiler error: librustc_mir/borrow_check/nll/universal_regions.rs:805: cannot convert `ReScope(Destruction(ItemLocalId(64)))` to a region vid

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: rustc 1.25.0-dev running on x86_64-unknown-linux-gnu

note: run with `RUST_BACKTRACE=1` for a backtrace

thread 'rustc' panicked at 'Box<Any>', librustc_errors/lib.rs:509:9
stack backtrace:
   0:     0x7fe3f25710fb - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::h89e4e024185eb251
                               at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1:     0x7fe3f2585861 - std::sys_common::backtrace::print::h2c98df9d22a6e204
                               at libstd/sys_common/backtrace.rs:68
                               at libstd/sys_common/backtrace.rs:57
   2:     0x7fe3f2566651 - std::panicking::default_hook::{{closure}}::hc4353cdd7897b77b
                               at libstd/panicking.rs:380
   3:     0x7fe3f2566271 - std::panicking::default_hook::h9bbd1477c233f26c
                               at libstd/panicking.rs:390
   4:     0x7fe3f2566946 - std::panicking::rust_panic_with_hook::hdfded1d66d2e81cf
                               at libstd/panicking.rs:576
   5:     0x7fe3ec6d9b0a - std::panicking::begin_panic::hc1e06300d698b4bf
                               at /home/santiago/src/oss/rust1/src/libstd/panicking.rs:537
   6:     0x7fe3ec6c00fc - rustc_errors::Handler::bug::he87305f1ede57b19
                               at librustc_errors/lib.rs:509
   7:     0x7fe3ee3107ec - <std::thread::local::LocalKey<T>>::with::h5470058d3b926080
                               at librustc/session/mod.rs:1137
                               at librustc/ty/context.rs:1600
                               at librustc/ty/context.rs:1589
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:377
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:288
   8:     0x7fe3ede75d79 - rustc::ty::context::tls::with_opt::h2796bc91cf351e3e
                               at librustc/ty/context.rs:1585
                               at librustc/ty/context.rs:1600
   9:     0x7fe3ede09892 - rustc::session::opt_span_bug_fmt::hf3a2233d30c89c49
                               at librustc/session/mod.rs:1133
  10:     0x7fe3eddf1f29 - rustc::session::bug_fmt::h607a5b7f07dd949a
                               at librustc/session/mod.rs:1117
  11:     0x7fe3f00aa6c6 - rustc_mir::borrow_check::nll::universal_regions::UniversalRegionIndices::to_region_vid::he03012a5077f472e
                               at librustc_mir/borrow_check/nll/universal_regions.rs:805
  12:     0x7fe3f0093588 - rustc_mir::borrow_check::nll::subtype_constraint_generation::generate::h6bf13380917ccf40
                               at librustc_mir/borrow_check/nll/subtype_constraint_generation.rs:159
                               at librustc_mir/borrow_check/nll/subtype_constraint_generation.rs:74
                               at librustc_mir/borrow_check/nll/subtype_constraint_generation.rs:33
  13:     0x7fe3f0081cdc - rustc_mir::borrow_check::nll::compute_regions::h8a28351ecd692877
                               at librustc_mir/borrow_check/nll/mod.rs:97
  14:     0x7fe3f0079d5d - rustc_mir::borrow_check::do_mir_borrowck::h5527e035bdb6f90b
                               at librustc_mir/borrow_check/mod.rs:196
  15:     0x7fe3f0256bcc - <std::thread::local::LocalKey<T>>::with::h09e3d281217138a6
                               at librustc_mir/borrow_check/mod.rs:81
                               at /home/santiago/src/oss/rust1/src/librustc/infer/mod.rs:439
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1573
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:377
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:288
  16:     0x7fe3f004af0a - rustc::ty::context::tls::enter::hf92705338ff04233
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1570
  17:     0x7fe3f004d66c - rustc::ty::context::GlobalCtxt::enter_local::h834852a1d0d3a09a
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1381
  18:     0x7fe3f00363f2 - rustc::infer::InferCtxtBuilder::enter::h876297f802958ad2
                               at /home/santiago/src/oss/rust1/src/librustc/infer/mod.rs:439
  19:     0x7fe3f00794ad - rustc_mir::borrow_check::mir_borrowck::ha3ddcadee42ed870
                               at librustc_mir/borrow_check/mod.rs:79
  20:     0x7fe3edfd9b90 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::compute_result::hf45a226b5c044941
                               at librustc/ty/maps/plumbing.rs:383
  21:     0x7fe3edc24108 - rustc::dep_graph::graph::DepGraph::with_task_impl::h977b285d649164fa
                               at librustc/dep_graph/graph.rs:289
  22:     0x7fe3edbf6a0f - rustc::dep_graph::graph::DepGraph::with_task::h606c300c86adccb4
                               at librustc/dep_graph/graph.rs:199
  23:     0x7fe3ee123057 - rustc_errors::Handler::track_diagnostics::h5c4733a59e59914c
                               at librustc/ty/maps/plumbing.rs:492
                               at /home/santiago/src/oss/rust1/src/librustc_errors/lib.rs:572
  24:     0x7fe3edea6ace - rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check::h510dda0193aa77a2
                               at librustc/ty/maps/plumbing.rs:485
                               at librustc/ty/maps/plumbing.rs:121
  25:     0x7fe3edfd9c92 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::force::h5b5a43ddd69d4127
                               at librustc/ty/maps/plumbing.rs:484
  26:     0x7fe3edfda921 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_borrowck<'tcx>>::try_get::hb7409412e9075295
                               at librustc/ty/maps/plumbing.rs:301
                               at librustc/ty/maps/plumbing.rs:526
  27:     0x7fe3edf2e015 - rustc::ty::maps::TyCtxtAt::mir_borrowck::hb6ba692bbeabd5e9
                               at librustc/ty/maps/plumbing.rs:565
  28:     0x7fe3ede71718 - rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::mir_borrowck::h44d6f533e09947b5
                               at librustc/ty/maps/plumbing.rs:558
  29:     0x7fe3f01679b5 - rustc_mir::transform::optimized_mir::h96ad9f601d2a4c3a
                               at librustc_mir/transform/mod.rs:224
  30:     0x7fe3edfc529c - rustc::ty::maps::<impl rustc::ty::maps::queries::optimized_mir<'tcx>>::compute_result::h6bc9586df0c100de
                               at librustc/ty/maps/plumbing.rs:383
  31:     0x7fe3edc014ec - rustc::dep_graph::graph::DepGraph::with_task_impl::h0f418d56d7276c24
                               at librustc/dep_graph/graph.rs:289
  32:     0x7fe3edbf983f - rustc::dep_graph::graph::DepGraph::with_task::hc1043ef620363c9a
                               at librustc/dep_graph/graph.rs:199
  33:     0x7fe3ee135fe9 - rustc_errors::Handler::track_diagnostics::hadbe002cf50db752
                               at librustc/ty/maps/plumbing.rs:492
                               at /home/santiago/src/oss/rust1/src/librustc_errors/lib.rs:572
  34:     0x7fe3edeb1f9e - rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check::h693e209892dd1b62
                               at librustc/ty/maps/plumbing.rs:485
                               at librustc/ty/maps/plumbing.rs:121
  35:     0x7fe3edfc53a2 - rustc::ty::maps::<impl rustc::ty::maps::queries::optimized_mir<'tcx>>::force::hdbac92685025573c
                               at librustc/ty/maps/plumbing.rs:484
  36:     0x7fe3edfc5f59 - rustc::ty::maps::<impl rustc::ty::maps::queries::optimized_mir<'tcx>>::try_get::h9bf0895892cac397
                               at librustc/ty/maps/plumbing.rs:301
                               at librustc/ty/maps/plumbing.rs:526
  37:     0x7fe3edf2d4f0 - rustc::ty::maps::TyCtxtAt::optimized_mir::hece9302269f90869
                               at librustc/ty/maps/plumbing.rs:565
  38:     0x7fe3ede70933 - rustc::ty::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::generator_layout::h2a24fe370eb0bf02
                               at librustc/ty/maps/plumbing.rs:558
                               at librustc/ty/mod.rs:2408
  39:     0x7fe3ee0aa338 - rustc::ty::sty::ClosureSubsts::field_tys::h4e78d846c4c7b99f
                               at librustc/ty/sty.rs:385
                               at librustc/ty/sty.rs:395
  40:     0x7fe3f009bfa5 - rustc_mir::borrow_check::nll::type_check::TypeChecker::check_stmt::hc0b1fc4eb739da1b
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1237
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1391
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1257
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:736
  41:     0x7fe3f0096275 - rustc_mir::borrow_check::nll::type_check::type_check_internal::hb6a53cb1aaf14481
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1529
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:147
  42:     0x7fe3f025b973 - <std::thread::local::LocalKey<T>>::with::he82eb33141148d71
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1567
                               at /home/santiago/src/oss/rust1/src/librustc/infer/mod.rs:439
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1573
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:377
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:288
  43:     0x7fe3f004acf6 - rustc::ty::context::tls::enter::h7e83703a337535c9
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1570
  44:     0x7fe3f004d3b1 - rustc::ty::context::GlobalCtxt::enter_local::h0621d96c5b6be670
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1381
  45:     0x7fe3f003655c - rustc::infer::InferCtxtBuilder::enter::hd88b6ff241782a73
                               at /home/santiago/src/oss/rust1/src/librustc/infer/mod.rs:439
  46:     0x7fe3f00a0b58 - <rustc_mir::borrow_check::nll::type_check::TypeckMir as rustc_mir::transform::MirPass>::run_pass::hda62eb5dbe17f5d1
                               at librustc_mir/borrow_check/nll/type_check/mod.rs:1566
  47:     0x7fe3f0167e42 - rustc_mir::transform::mir_const::{{closure}}::{{closure}}::h0de20d8d525be8fd
                               at librustc_mir/transform/mod.rs:169
  48:     0x7fe3f0167f42 - rustc_mir::transform::mir_const::{{closure}}::hb1e9a7d1fc75a315
                               at librustc_mir/transform/mod.rs:174
  49:     0x7fe3f016756f - rustc_mir::transform::mir_const::ha9721567bbd1fc84
                               at librustc_mir/transform/mod.rs:192
  50:     0x7fe3edfc1d1c - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_const<'tcx>>::compute_result::h22d13433e4ac1ce3
                               at librustc/ty/maps/plumbing.rs:383
  51:     0x7fe3edc1894c - rustc::dep_graph::graph::DepGraph::with_task_impl::h6754f85d18706e9d
                               at librustc/dep_graph/graph.rs:289
  52:     0x7fe3edbf531f - rustc::dep_graph::graph::DepGraph::with_task::h03a19d6cec9ab89c
                               at librustc/dep_graph/graph.rs:199
  53:     0x7fe3ee12da49 - rustc_errors::Handler::track_diagnostics::h84e04bd5e8e43f45
                               at librustc/ty/maps/plumbing.rs:492
                               at /home/santiago/src/oss/rust1/src/librustc_errors/lib.rs:572
  54:     0x7fe3edeae05e - rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check::h5d450ec0965c9207
                               at librustc/ty/maps/plumbing.rs:485
                               at librustc/ty/maps/plumbing.rs:121
  55:     0x7fe3edfc1e22 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_const<'tcx>>::force::he85a45ff85b59637
                               at librustc/ty/maps/plumbing.rs:484
  56:     0x7fe3edfc2954 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_const<'tcx>>::try_get::h28d2986d18b02275
                               at librustc/ty/maps/plumbing.rs:301
                               at librustc/ty/maps/plumbing.rs:526
  57:     0x7fe3edf2d2f0 - rustc::ty::maps::TyCtxtAt::mir_const::h4f8bc05eeb6cccc1
                               at librustc/ty/maps/plumbing.rs:565
  58:     0x7fe3ede71473 - rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::mir_const::he004809d23112ee3
                               at librustc/ty/maps/plumbing.rs:558
  59:     0x7fe3f01677a9 - rustc_mir::transform::mir_validated::hf134800fbe95f026
                               at librustc_mir/transform/mod.rs:212
  60:     0x7fe3edfc37dc - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_validated<'tcx>>::compute_result::h74ab2466cec6553c
                               at librustc/ty/maps/plumbing.rs:383
  61:     0x7fe3edc1894c - rustc::dep_graph::graph::DepGraph::with_task_impl::h6754f85d18706e9d
                               at librustc/dep_graph/graph.rs:289
  62:     0x7fe3edbf531f - rustc::dep_graph::graph::DepGraph::with_task::h03a19d6cec9ab89c
                               at librustc/dep_graph/graph.rs:199
  63:     0x7fe3ee12dd39 - rustc_errors::Handler::track_diagnostics::h853cd199344d6d16
                               at librustc/ty/maps/plumbing.rs:492
                               at /home/santiago/src/oss/rust1/src/librustc_errors/lib.rs:572
  64:     0x7fe3edef983e - rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check::hfa507479adc53f93
                               at librustc/ty/maps/plumbing.rs:485
                               at librustc/ty/maps/plumbing.rs:121
  65:     0x7fe3edfc38e2 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_validated<'tcx>>::force::h1e214bd57c21da95
                               at librustc/ty/maps/plumbing.rs:484
  66:     0x7fe3edfc4414 - rustc::ty::maps::<impl rustc::ty::maps::queries::mir_validated<'tcx>>::try_get::hf5dc975a017672f6
                               at librustc/ty/maps/plumbing.rs:301
                               at librustc/ty/maps/plumbing.rs:526
  67:     0x7fe3edf2d3f0 - rustc::ty::maps::TyCtxtAt::mir_validated::h45ff48459758b218
                               at librustc/ty/maps/plumbing.rs:565
  68:     0x7fe3ede714a3 - rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::mir_validated::hdbdc23429ae79cdc
                               at librustc/ty/maps/plumbing.rs:558
  69:     0x7fe3f1a29073 - rustc_borrowck::borrowck::borrowck::h4c28b8b81f9c7c9c
                               at librustc_borrowck/borrowck/mod.rs:130
  70:     0x7fe3edfd799c - rustc::ty::maps::<impl rustc::ty::maps::queries::borrowck<'tcx>>::compute_result::h7b0ba7aa8ea2f5ea
                               at librustc/ty/maps/plumbing.rs:383
  71:     0x7fe3edbfe3bc - rustc::dep_graph::graph::DepGraph::with_task_impl::h03cc6e388e9bd81f
                               at librustc/dep_graph/graph.rs:289
  72:     0x7fe3edbf674f - rustc::dep_graph::graph::DepGraph::with_task::h4d7d47f94085b0dc
                               at librustc/dep_graph/graph.rs:199
  73:     0x7fe3ee122894 - rustc_errors::Handler::track_diagnostics::h5b589e6cac23d674
                               at librustc/ty/maps/plumbing.rs:492
                               at /home/santiago/src/oss/rust1/src/librustc_errors/lib.rs:572
  74:     0x7fe3edeca74e - rustc::ty::maps::plumbing::<impl rustc::ty::context::TyCtxt<'a, 'gcx, 'tcx>>::cycle_check::h904d9c707287cca3
                               at librustc/ty/maps/plumbing.rs:485
                               at librustc/ty/maps/plumbing.rs:121
  75:     0x7fe3edfd7aa2 - rustc::ty::maps::<impl rustc::ty::maps::queries::borrowck<'tcx>>::force::h409818cdbf2bb909
                               at librustc/ty/maps/plumbing.rs:484
  76:     0x7fe3edfd86da - rustc::ty::maps::<impl rustc::ty::maps::queries::borrowck<'tcx>>::try_get::ha7f0405e162ef756
                               at librustc/ty/maps/plumbing.rs:301
                               at librustc/ty/maps/plumbing.rs:526
  77:     0x7fe3edf2df00 - rustc::ty::maps::TyCtxtAt::borrowck::hb4533b6244fdbf36
                               at librustc/ty/maps/plumbing.rs:565
  78:     0x7fe3ede716e3 - rustc::ty::maps::<impl rustc::ty::context::TyCtxt<'a, 'tcx, 'lcx>>::borrowck::h04686234667b58f9
                               at librustc/ty/maps/plumbing.rs:558
  79:     0x7fe3f1a28d1e - rustc_borrowck::borrowck::check_crate::h0595475cbfb5e26f
                               at librustc_borrowck/borrowck/mod.rs:70
  80:     0x7fe3f29c0207 - <std::thread::local::LocalKey<T>>::with::h5c65293ff59250fe
                               at librustc_driver/driver.rs:1067
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1573
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:377
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:288
  81:     0x7fe3f28dd71e - rustc::ty::context::tls::enter::h88b739b20317ffe4
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1570
  82:     0x7fe3f29becec - <std::thread::local::LocalKey<T>>::with::h43c40e0d4e18765b
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1557
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:377
                               at /home/santiago/src/oss/rust1/src/libstd/thread/local.rs:288
  83:     0x7fe3f28dd1d7 - rustc::ty::context::tls::enter_global::h0e8e2e22f658e325
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1554
  84:     0x7fe3f28e1bf5 - rustc::ty::context::TyCtxt::create_and_enter::h1843d08844146f02
                               at /home/santiago/src/oss/rust1/src/librustc/ty/context.rs:1197
  85:     0x7fe3f2926e27 - rustc_driver::driver::phase_3_run_analysis_passes::hdca06791b92b8d71
                               at librustc_driver/driver.rs:1017
  86:     0x7fe3f2918c57 - rustc_driver::driver::compile_input::h80b1c15489d523ea
                               at librustc_driver/driver.rs:220
  87:     0x7fe3f290a646 - rustc_driver::run_compiler::h6941f27d9cf14ec2
                               at librustc_driver/lib.rs:248
  88:     0x7fe3f29b797a - std::sys_common::backtrace::__rust_begin_short_backtrace::h2f40e38beb20488f
                               at librustc_driver/lib.rs:1305
                               at librustc_driver/lib.rs:132
                               at librustc_driver/lib.rs:1212
                               at /home/santiago/src/oss/rust1/src/libstd/sys_common/backtrace.rs:133
  89:     0x7fe3f259ae76 - __rust_maybe_catch_panic
                               at libpanic_unwind/lib.rs:102
  90:     0x7fe3f299a437 - std::panicking::try::hf10cda8586478214
                               at /home/santiago/src/oss/rust1/src/libstd/panicking.rs:458
  91:     0x7fe3f299a27d - std::panic::catch_unwind::h95b8c396b2db40d5
                               at /home/santiago/src/oss/rust1/src/libstd/panic.rs:358
  92:     0x7fe3f29cc9f3 - <F as alloc::boxed::FnBox<A>>::call_box::h6aa43ee35a088e4c
                               at /home/santiago/src/oss/rust1/src/libstd/thread/mod.rs:405
                               at /home/santiago/src/oss/rust1/src/liballoc/boxed.rs:817
  93:     0x7fe3f258d792 - std::sys_common::thread::start_thread::he35a8e58b745ed7d
                               at libstd/sys_common/thread.rs:24
  94:     0x7fe3f2582408 - std::sys::unix::thread::Thread::new::thread_start::h669389680624d627
                               at libstd/sys/unix/thread.rs:90
  95:     0x7fe3ebddd08b - start_thread
  96:     0x7fe3f2230e1e - __GI___clone
  97:                0x0 - <unknown>

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-NLLArea: Non-lexical lifetimes (NLL)I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions