rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
98.18k stars 12.7k forks source link

thread 'rustc' panicked at 'Found unstable fingerprints for mir_borrowck #96655

Closed bbigras closed 2 years ago

bbigras commented 2 years ago

No idea if it's related to https://github.com/rust-lang/rust/issues/84970 if the compiler still asked me to fill out a bug report.

Code

<code>

Meta

rustc --version --verbose:

rustc 1.62.0-nightly (e7575f967 2022-04-14)
binary: rustc
commit-hash: e7575f9670f3c837def3d186ae09366c75c7632e
commit-date: 2022-04-14
host: x86_64-unknown-linux-gnu
release: 1.62.0-nightly
LLVM version: 14.0.0

Error output

error: lifetime may not live long enough
  --> src/query.rs:53:26
   |
53 | #[derive(Clone, Default, SimpleObject)]
   |                          -^^^^^^^^^^^
   |                          |
   |                          let's call the lifetime of this reference `'2`
   |                          let's call the lifetime of this reference `'1`
   |                          associated function was supposed to return data with lifetime `'1` but it is returning data with lifetime `'2`
   |
   = note: this error originates in the derive macro `SimpleObject` (in Nightly builds, run with -Z macro-backtrace for more info)

error: lifetime may not live long enough
  --> src/query.rs:53:26
   |
53 | #[derive(Clone, Default, SimpleObject)]
   |                          -^^^^^^^^^^^
   |                          |
   |                          let's call the lifetime of this reference `'1`
   |                          let's call the lifetime of this reference `'2`
   |                          associated function was supposed to return data with lifetime `'2` but it is returning data with lifetime `'1`
   |
   = note: this error originates in the derive macro `SimpleObject` (in Nightly builds, run with -Z macro-backtrace for more info)

error: internal compiler error: encountered incremental compilation error with mir_borrowck(async_graphql_900[a851]::query::{impl#16}::name)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p async_graphql_900` or `cargo clean` to allow your project to compile
  = note: Please follow the instructions below to create a bug report with the provided information
  = note: See <https://github.com/rust-lang/rust/issues/84970> for more information

thread 'rustc' panicked at 'Found unstable fingerprints for mir_borrowck(async_graphql_900[a851]::query::{impl#16}::name): BorrowCheckResult { concrete_opaque_types: VecMap([(DefId(0:330 ~ async_graphql_900[a851]::query::{impl#16}::name::{opaque#0}), OpaqueHiddenType { span: src/query.rs:53:26: 53:38 (#109), ty: [type error] })]), closure_requirements: None, used_mut_upvars: [], tainted_by_errors: Some(ErrorGuaranteed(())) }', compiler/rustc_query_system/src/query/plumbing.rs:626:9
stack backtrace:
   0:     0x7fc70e0c596d - std::backtrace_rs::backtrace::libunwind::trace::h391ee3eb96720bb8
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7fc70e0c596d - std::backtrace_rs::backtrace::trace_unsynchronized::h8ac766d4ecc4f21c
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7fc70e0c596d - std::sys_common::backtrace::_print_fmt::h67120ae1638604b6
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys_common/backtrace.rs:66:5
   3:     0x7fc70e0c596d - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h43d9264c5edad28c
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys_common/backtrace.rs:45:22
   4:     0x7fc70e11ffec - core::fmt::write::hb38509135e81eb46
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/core/src/fmt/mod.rs:1194:17
   5:     0x7fc70e0b70c1 - std::io::Write::write_fmt::h68856f209e22f0a1
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/io/mod.rs:1655:15
   6:     0x7fc70e0c8685 - std::sys_common::backtrace::_print::h2f4ffd98d72d3d6b
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys_common/backtrace.rs:48:5
   7:     0x7fc70e0c8685 - std::sys_common::backtrace::print::hca608482b4ab8751
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys_common/backtrace.rs:35:9
   8:     0x7fc70e0c8685 - std::panicking::default_hook::{{closure}}::h9ed02f27942ac2ac
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/panicking.rs:295:22
   9:     0x7fc70e0c82f9 - std::panicking::default_hook::h632f45ebccdd2f92
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/panicking.rs:314:9
  10:     0x7fc70e869051 - rustc_driver[8d2c61ed892e27c5]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7fc706204bc3 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha7b64100b977ec92
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/alloc/src/boxed.rs:1880:9
  12:     0x7fc706205c1d - proc_macro::bridge::client::<impl proc_macro::bridge::Bridge>::enter::{{closure}}::{{closure}}::h935379c5b0a4287d
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/proc_macro/src/bridge/client.rs:335:21
  13:     0x7fc70e0c8e56 - std::panicking::rust_panic_with_hook::h4565951773f90b0d
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/panicking.rs:702:17
  14:     0x7fc70e0c8c57 - std::panicking::begin_panic_handler::{{closure}}::hc43ea5bc6ea479a7
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/panicking.rs:588:13
  15:     0x7fc70e0c5e24 - std::sys_common::backtrace::__rust_end_short_backtrace::hce88d380b9b7207e
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys_common/backtrace.rs:138:18
  16:     0x7fc70e0c8989 - rust_begin_unwind
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/panicking.rs:584:5
  17:     0x7fc70e08c933 - core::panicking::panic_fmt::h5088ed6a76740fc5
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/core/src/panicking.rs:142:14
  18:     0x7fc70f93acb9 - rustc_query_system[448834765b757abe]::query::plumbing::incremental_verify_ich_cold
  19:     0x7fc710d6db68 - rustc_query_system[448834765b757abe]::query::plumbing::incremental_verify_ich::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_span[58998adc3a002fd7]::def_id::LocalDefId, &rustc_middle[c1bc41806e35a37]::mir::query::BorrowCheckResult>
  20:     0x7fc710d7b72e - rustc_query_system[448834765b757abe]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_span[58998adc3a002fd7]::def_id::LocalDefId, &rustc_middle[c1bc41806e35a37]::mir::query::BorrowCheckResult>
  21:     0x7fc71025e31e - rustc_query_system[448834765b757abe]::query::plumbing::try_execute_query::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_query_system[448834765b757abe]::query::caches::DefaultCache<rustc_span[58998adc3a002fd7]::def_id::LocalDefId, &rustc_middle[c1bc41806e35a37]::mir::query::BorrowCheckResult>>
  22:     0x7fc7103609ba - <rustc_query_impl[58c75a6312b85ccf]::Queries as rustc_middle[c1bc41806e35a37]::ty::query::QueryEngine>::mir_borrowck
  23:     0x7fc71073e581 - <rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt>::mir_borrowck_opt_const_arg
  24:     0x7fc70fc86c4c - rustc_mir_transform[7b81c34826ad123d]::mir_drops_elaborated_and_const_checked
  25:     0x7fc710dfb41c - <rustc_query_system[448834765b757abe]::dep_graph::graph::DepGraph<rustc_middle[c1bc41806e35a37]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt, rustc_middle[c1bc41806e35a37]::ty::WithOptConstParam<rustc_span[58998adc3a002fd7]::def_id::LocalDefId>, &rustc_data_structures[22f2f8eb4d9dc27d]::steal::Steal<rustc_middle[c1bc41806e35a37]::mir::Body>>
  26:     0x7fc71024ad46 - rustc_query_system[448834765b757abe]::query::plumbing::try_execute_query::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_query_system[448834765b757abe]::query::caches::DefaultCache<rustc_middle[c1bc41806e35a37]::ty::WithOptConstParam<rustc_span[58998adc3a002fd7]::def_id::LocalDefId>, &rustc_data_structures[22f2f8eb4d9dc27d]::steal::Steal<rustc_middle[c1bc41806e35a37]::mir::Body>>>
  27:     0x7fc71035f4f8 - <rustc_query_impl[58c75a6312b85ccf]::Queries as rustc_middle[c1bc41806e35a37]::ty::query::QueryEngine>::mir_drops_elaborated_and_const_checked
  28:     0x7fc70fc8811c - rustc_mir_transform[7b81c34826ad123d]::optimized_mir
  29:     0x7fc710e12bc7 - <rustc_query_system[448834765b757abe]::dep_graph::graph::DepGraph<rustc_middle[c1bc41806e35a37]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt, rustc_span[58998adc3a002fd7]::def_id::DefId, &rustc_middle[c1bc41806e35a37]::mir::Body>
  30:     0x7fc71026e0cc - rustc_query_system[448834765b757abe]::query::plumbing::try_execute_query::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_query_system[448834765b757abe]::query::caches::DefaultCache<rustc_span[58998adc3a002fd7]::def_id::DefId, &rustc_middle[c1bc41806e35a37]::mir::Body>>
  31:     0x7fc71035f79e - <rustc_query_impl[58c75a6312b85ccf]::Queries as rustc_middle[c1bc41806e35a37]::ty::query::QueryEngine>::optimized_mir
  32:     0x7fc710752ecd - <rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt>::instance_mir
  33:     0x7fc70fbf034c - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_neighbours
  34:     0x7fc70fbec524 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  35:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  36:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  37:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  38:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  39:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  40:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  41:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  42:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  43:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  44:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  45:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  46:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  47:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  48:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  49:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  50:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  51:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  52:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  53:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  54:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  55:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  56:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  57:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  58:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  59:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  60:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  61:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  62:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  63:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  64:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  65:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  66:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  67:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  68:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  69:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  70:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  71:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  72:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  73:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  74:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  75:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  76:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  77:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  78:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  79:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  80:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  81:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  82:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  83:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  84:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  85:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  86:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  87:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  88:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  89:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  90:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  91:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  92:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  93:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  94:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  95:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  96:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  97:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  98:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
  99:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 100:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 101:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 102:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 103:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 104:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 105:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 106:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 107:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 108:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 109:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 110:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 111:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 112:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 113:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 114:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 115:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 116:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 117:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 118:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 119:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 120:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 121:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 122:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 123:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 124:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 125:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 126:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 127:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 128:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 129:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 130:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 131:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 132:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 133:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 134:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 135:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 136:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 137:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 138:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 139:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 140:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 141:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 142:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 143:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 144:     0x7fc70fbec682 - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_items_rec
 145:     0x7fc710a316fb - <rustc_session[cfdcb47d80c95589]::session::Session>::time::<(), rustc_monomorphize[5e92d9ad59070b98]::collector::collect_crate_mono_items::{closure#1}>
 146:     0x7fc710a26c5b - rustc_monomorphize[5e92d9ad59070b98]::collector::collect_crate_mono_items
 147:     0x7fc710a2d776 - rustc_monomorphize[5e92d9ad59070b98]::partitioning::collect_and_partition_mono_items
 148:     0x7fc70f21f078 - <rustc_middle[c1bc41806e35a37]::dep_graph::dep_node::DepKind as rustc_query_system[448834765b757abe]::dep_graph::DepKind>::with_deps::<<rustc_query_system[448834765b757abe]::dep_graph::graph::DepGraph<rustc_middle[c1bc41806e35a37]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt, (), (&std[965189dd79571a90]::collections::hash::set::HashSet<rustc_span[58998adc3a002fd7]::def_id::DefId, core[c15249dfec5bc62b]::hash::BuildHasherDefault<rustc_hash[e24271fb3e8d4a63]::FxHasher>>, &[rustc_middle[c1bc41806e35a37]::mir::mono::CodegenUnit])>::{closure#0}, (&std[965189dd79571a90]::collections::hash::set::HashSet<rustc_span[58998adc3a002fd7]::def_id::DefId, core[c15249dfec5bc62b]::hash::BuildHasherDefault<rustc_hash[e24271fb3e8d4a63]::FxHasher>>, &[rustc_middle[c1bc41806e35a37]::mir::mono::CodegenUnit])>
 149:     0x7fc70f290981 - <rustc_query_system[448834765b757abe]::dep_graph::graph::DepGraph<rustc_middle[c1bc41806e35a37]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[c1bc41806e35a37]::ty::context::TyCtxt, (), (&std[965189dd79571a90]::collections::hash::set::HashSet<rustc_span[58998adc3a002fd7]::def_id::DefId, core[c15249dfec5bc62b]::hash::BuildHasherDefault<rustc_hash[e24271fb3e8d4a63]::FxHasher>>, &[rustc_middle[c1bc41806e35a37]::mir::mono::CodegenUnit])>
 150:     0x7fc710d68b7c - rustc_query_system[448834765b757abe]::query::plumbing::try_execute_query::<rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt, rustc_query_system[448834765b757abe]::query::caches::DefaultCache<(), (&std[965189dd79571a90]::collections::hash::set::HashSet<rustc_span[58998adc3a002fd7]::def_id::DefId, core[c15249dfec5bc62b]::hash::BuildHasherDefault<rustc_hash[e24271fb3e8d4a63]::FxHasher>>, &[rustc_middle[c1bc41806e35a37]::mir::mono::CodegenUnit])>>
 151:     0x7fc710d9dc10 - rustc_query_system[448834765b757abe]::query::plumbing::get_query::<rustc_query_impl[58c75a6312b85ccf]::queries::collect_and_partition_mono_items, rustc_query_impl[58c75a6312b85ccf]::plumbing::QueryCtxt>
 152:     0x7fc710e57372 - <rustc_query_impl[58c75a6312b85ccf]::Queries as rustc_middle[c1bc41806e35a37]::ty::query::QueryEngine>::collect_and_partition_mono_items
 153:     0x7fc7108dee5c - <rustc_codegen_llvm[e8e4d2ac4baf03c3]::LlvmCodegenBackend as rustc_codegen_ssa[3de0b33027ad68]::traits::backend::CodegenBackend>::codegen_crate
 154:     0x7fc7108a8a77 - <rustc_session[cfdcb47d80c95589]::session::Session>::time::<alloc[3aca13a976c67657]::boxed::Box<dyn core[c15249dfec5bc62b]::any::Any>, rustc_interface[ad68b8c89b0ab142]::passes::start_codegen::{closure#0}>
 155:     0x7fc7108a40ee - <rustc_interface[ad68b8c89b0ab142]::queries::Queries>::ongoing_codegen
 156:     0x7fc71086af5b - <rustc_interface[ad68b8c89b0ab142]::interface::Compiler>::enter::<rustc_driver[8d2c61ed892e27c5]::run_compiler::{closure#1}::{closure#2}, core[c15249dfec5bc62b]::result::Result<core[c15249dfec5bc62b]::option::Option<rustc_interface[ad68b8c89b0ab142]::queries::Linker>, rustc_errors[b80d242712464baa]::ErrorGuaranteed>>
 157:     0x7fc710893b4f - rustc_span[58998adc3a002fd7]::with_source_map::<core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>, rustc_interface[ad68b8c89b0ab142]::interface::create_compiler_and_run<core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>, rustc_driver[8d2c61ed892e27c5]::run_compiler::{closure#1}>::{closure#1}>
 158:     0x7fc71086bb57 - <scoped_tls[5587684970d3e6f5]::ScopedKey<rustc_span[58998adc3a002fd7]::SessionGlobals>>::set::<rustc_interface[ad68b8c89b0ab142]::interface::run_compiler<core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>, rustc_driver[8d2c61ed892e27c5]::run_compiler::{closure#1}>::{closure#0}, core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>>
 159:     0x7fc710880f6f - std[965189dd79571a90]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[ad68b8c89b0ab142]::util::run_in_thread_pool_with_globals<rustc_interface[ad68b8c89b0ab142]::interface::run_compiler<core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>, rustc_driver[8d2c61ed892e27c5]::run_compiler::{closure#1}>::{closure#0}, core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>>::{closure#0}, core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>>
 160:     0x7fc7108810a9 - <<std[965189dd79571a90]::thread::Builder>::spawn_unchecked_<rustc_interface[ad68b8c89b0ab142]::util::run_in_thread_pool_with_globals<rustc_interface[ad68b8c89b0ab142]::interface::run_compiler<core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>, rustc_driver[8d2c61ed892e27c5]::run_compiler::{closure#1}>::{closure#0}, core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>>::{closure#0}, core[c15249dfec5bc62b]::result::Result<(), rustc_errors[b80d242712464baa]::ErrorGuaranteed>>::{closure#1} as core[c15249dfec5bc62b]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
 161:     0x7fc70e0d3033 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h051b06cc552f7ca2
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/alloc/src/boxed.rs:1866:9
 162:     0x7fc70e0d3033 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h0ed7e89ffdc39ab5
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/alloc/src/boxed.rs:1866:9
 163:     0x7fc70e0d3033 - std::sys::unix::thread::Thread::new::thread_start::hf01169ad6dd2310f
                               at /rustc/e7575f9670f3c837def3d186ae09366c75c7632e/library/std/src/sys/unix/thread.rs:108:17
 164:     0x7fc70dea0eb2 - start_thread
 165:     0x7fc70df2331c - clone3
 166:                0x0 - <unknown>

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/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.62.0-nightly (e7575f967 2022-04-14) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [mir_borrowck] borrow-checking `query::<impl at src/query.rs:53:26: 53:38>::name`
#1 [mir_drops_elaborated_and_const_checked] elaborating drops for `query::<impl at src/query.rs:53:26: 53:38>::name`
#2 [optimized_mir] optimizing MIR for `query::<impl at src/query.rs:53:26: 53:38>::name`
#3 [collect_and_partition_mono_items] collect_and_partition_mono_items
end of query stack
warning: `async-graphql-900` (bin "async-graphql-900") generated 5 warnings
error: could not compile `async-graphql-900` due to 3 previous errors; 5 warnings emitted
Backtrace

``` ```

Aaron1011 commented 2 years ago

@bbigras - Can you share the repository where this happened?

bbigras commented 2 years ago

It's https://github.com/bbigras/async-graphql-900 but I can't reproduce at will.

Note that I created this repo to try to reproduce a weird lifetime bug I had with async-graphql (see https://github.com/async-graphql/async-graphql/issues/900).

danielhenrymantilla commented 2 years ago

@Aaron1011 I don't know if related, but I managed to reproduce a stand-alone incremental compilation bug (but with no ICE) by using:

set -euo pipefail
cd $(mktemp -d)

cargo init -q --name example --lib

cat> src/lib.rs <<'EOF'
    #![allow(unused)]
    struct Foo;

    impl Foo {
        async fn f(&self, _: &&()) -> &() {
            &()
        }
    }
EOF

(set -x
    cargo c -q
    { set +x; echo 'enum Bar {}'; } 2>/dev/null | tee -a src/lib.rs
    cargo c -q
)

echo ✅
michaelwoerister commented 2 years ago

I suspect that https://github.com/rust-lang/rust/pull/86118 exposed an existing instability in the construction of BorrowCheckResult by changing the concrete_opaque_types field from FxHashMap to VecMap.

FxHashMap (invalidly) ignores its ordering during stable hashing while VecMap doesn't.