Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unstable fingerprints tracking issue #84970

Open
Mark-Simulacrum opened this issue May 6, 2021 · 86 comments
Open

Unstable fingerprints tracking issue #84970

Mark-Simulacrum opened this issue May 6, 2021 · 86 comments
Assignees
Labels
A-incr-comp Area: Incremental compilation P-high High priority regression-from-stable-to-stable Performance or correctness regression from one stable version to another. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Milestone

Comments

@Mark-Simulacrum
Copy link
Member

Mark-Simulacrum commented May 6, 2021

For users hitting this bug: please read this blog post which discusses what you can do. An excerpt is below:

The Internal Compiler Error asks you to report a bug, and if you can do so, we still want that information. We want to know about the cases that are failing.

But regardless of whether or not you file a bug, the problem here can be resolved by either:

  1. deleting your incremental compilation cache (e.g. by running cargo clean for the whole project or cargo clean -p crate-causing-the-error), or
  2. force incremental compilation to be disabled, by setting CARGO_INCREMENTAL=0 in your environment or setting build.incremental to false in your $HOME/.cargo/config.toml file (which might also be called $HOME/.cargo/config) by adding this:
build.incremental = 'false'

We recommend that users of 1.52.0 disable incremental compilation, to avoid running into this problem.

We do not recommend that users of 1.52.0 downgrade to an earlier version of Rust in response to this problem. There is at least one instance of a silent miscompilation caused by incremental compilation that was not caught until we added the fingerprint checking.


I believe the (new) ICEs as a result of improved error detection in the incremental code will land in 1.53 onto stable, which is in 6 weeks. We are unlikely to fix all of the fallout (i.e. all bugs, at least 25 of which are currently open, though some are duplicates) by that time and be willing to backport the fixes. I suspect we are also unlikely to want to disable the new assertions; they are catching known unsoundness. I am opening this issue to discuss possible alternatives, which are hopefully more user friendly than the current ICE.

I think one direct improvement is to adjust the panic/assert on encountering this to be a proper compile error, which can tell the user that they should (for example) delete the incremental directory and invoke the compiler again. This is already a significant improvement over the current message, I suspect. We can still ask that they file a bug report.

We should also consider if it's worth considering applying performance-hurting mitigations; it seems definitely true we can drop incremental support on beta/stable until these bugs are fixed, but perhaps a smaller hammer is also viable.

Table of ICEs:

Issue Query name Has MCVE PR fixing issue fixed in 1.5x? PR adding regression test Done
#83259 predicates_of #84233 1.53 #84233
#83311 proc_macro_decls_static N/A
#83126 extern_mod_stmt_cnum mcve-83126 #83153 1.52 None yet
#85197 optimized_mir mcve-85197 #85211 1.54 #85211
#84225 exported_symbols ? #84226 1.53 None yet
#85019 item_children ? #83901 1.54 None yet
#83538 evaluate_obligation (EvaluatedToOk and EvaluatedToOkModuloRegions) #85186 1.54 #85186
#84963 evaluate_obligation (OverflowError) None yet ? None yet
native_libraries ? #85702 1.54 #85702
#85360 evaluate_obligation #85868 1.56 #91065

cc @Aaron1011 (driver of fixing the bugs, I believe)
cc @pnkfelix @wesleywiser (T-compiler leads)
cc @rust-lang/release for awareness

@Mark-Simulacrum Mark-Simulacrum added the regression-from-stable-to-beta Performance or correctness regression from stable to beta. label May 6, 2021
@Mark-Simulacrum Mark-Simulacrum added this to the 1.53.0 milestone May 6, 2021
@rustbot rustbot added the I-prioritize Issue: Indicates that prioritization has been requested for this issue. label May 6, 2021
@Mark-Simulacrum Mark-Simulacrum added I-nominated T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. P-critical Critical priority labels May 6, 2021
@Mark-Simulacrum
Copy link
Member Author

Nominating for T-compiler as I believe we should surface this during a meeting - likely for some small discussion, but mostly for awareness, and to see if we can get some help for possible ideas. I think this is a P-critical bug - not in the sense that we must have a fix for the underlying cause, but in the sense that this issue needs to be addressed in time for the next stable release.

I think it is likely worth applying the same fix to nightly as well, but perhaps in a channel-gated way if it has (for example) simply performance implications. This is a bit unclear.

@Aaron1011
Copy link
Member

I think emitting a compiler error would be a great idea. However, I think it should still encourage users to open an issue (emphasizing that this is an internal compiler bug), so that we can see if any new issues pop up.

@Aaron1011
Copy link
Member

Aaron1011 commented May 6, 2021

OUTDATED: See the new table in #84970 (comment)

Here's the current state of the crashes involving different queries:

As far as I know, these are all of the currently existing crashes. If anyone sees a crash involving a query other than one of these, please add it to this list.

@jyn514

This comment has been minimized.

@lqd

This comment has been minimized.

@jonas-schievink
Copy link
Contributor

I suspect we are also unlikely to want to disable the new assertions; they are catching known unsoundness.

I think this would actually most likely be fine – these ICE-causing bugs have existed for years, and it took very long for someone to run into a miscompilation.

@Mark-Simulacrum
Copy link
Member Author

Well, a known miscompilation - certainly the amount of ICEs we've seen suggests plenty of wrong results, right? Maybe in practice those don't cause problems, I don't know, but I'd rather give an error, especially if we can also e.g. poison the incremental cache automatically and make it just a matter of rerunning the compiler. In theory we could even teach Cargo to do that, though maybe that's going too far.

@Mark-Simulacrum
Copy link
Member Author

We discussed this during T-compiler meeting today, and decided on these actions:

  • @Aaron1011 will work on a backportable PR that switches the ICE to a nicer-looking (but still clearly 'our fault' vs. user's fault message) error, using the standard error infrastructure. This is intended to more clearly communicate that the bug is known, and that we're working on it, while also providing a clear suggestion on how to fix it (cargo clean? rm -rf /path/to/incremental/dir?).
    • There was some thoughts about possibly wanting to change all ICEs to be nicer to users, but this was left out of scope; we definitely don't want to backport that.
  • We will not disable the ICE on beta/stable, since it is a pretty clear bug, and even though known problems arising from it are rare, better to be safe.

@Mark-Simulacrum Mark-Simulacrum removed I-nominated I-prioritize Issue: Indicates that prioritization has been requested for this issue. labels May 6, 2021
@Aaron1011
Copy link
Member

I've opened #84998 to show a nicer error.

@Mark-Simulacrum Mark-Simulacrum added regression-from-stable-to-stable Performance or correctness regression from one stable version to another. and removed regression-from-stable-to-beta Performance or correctness regression from stable to beta. labels May 7, 2021
@Mark-Simulacrum Mark-Simulacrum modified the milestones: 1.53.0, 1.52.0 May 7, 2021
@jyn514 jyn514 added the A-incr-comp Area: Incremental compilation label May 7, 2021
@Mark-Simulacrum Mark-Simulacrum pinned this issue May 7, 2021
@carols10cents
Copy link
Member

1. deleting your incremental compilation cache (e.g. by running `cargo clean`), or

2. force incremental compilation to be disabled, by setting `CARGO_INCREMENTAL=0` in your environment or `build.incremental` to `false` in the `config.toml`.

We recommend that users of 1.52.0 disable incremental compilation, to avoid running into this problem.

We do not recommend that users of 1.52.0 downgrade to an earlier version of Rust in response to this problem. As noted above, there is at least one instance of a silent miscompilation caused by incremental compilation that was not caught until we added the fingerprint checking.

These workarounds are... not ideal for developer workflow time. I'd rather downgrade to an older stable than turn off incremental compilation. I see #82920 says:

This reproduces both on stable 1.50.0,

and there's some discussion of bisecting but I don't easily see a result of bisecting. Does anyone know the earliest stable version that doesn't have the miscompilation?

@Mark-Simulacrum
Copy link
Member Author

We are not aware, to my knowledge, of a "guaranteed to work" release - the known miscompilation was introduced at some point, but there may and likely are other unknown miscompilations as well, which is why the recommendation is either to clean or disable. You can clean specifically the most local crate (e.g., cargo clean -p crate-that-iced) and we are working on suggesting that in the error message from rustc.

@orf
Copy link

orf commented Jan 1, 2023

Have the following, was triggered by running cargo fmt concurrently with cargo watch (which runs cargo check):

error: internal compiler error: encountered incremental compilation error with mir_built(9d8933088bd2de00-2b70151a887b6f9e)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p pypi_data_scraper` 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

(huge output, see below)

stack backtrace:
   0:        0x10fdb77a2 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hdc69a6f447628e71
   1:        0x10fe0f64a - core::fmt::write::hb9e764fa47ae8444
   2:        0x10fda987c - std::io::Write::write_fmt::h8fc98987ed860a54
   3:        0x10fdb756a - std::sys_common::backtrace::print::h488fe4c0b1fb9d50
   4:        0x10fdba976 - std::panicking::default_hook::{{closure}}::h5618ea3156b8b833
   5:        0x10fdba6c7 - std::panicking::default_hook::h0421c26a8a92801c
   6:        0x1189f5c6d - rustc_driver[5519141fff5a68e4]::DEFAULT_HOOK::{closure#0}::{closure#0}
   7:        0x10fdbb171 - std::panicking::rust_panic_with_hook::h57383cd32463c250
   8:        0x10fdbaf03 - std::panicking::begin_panic_handler::{{closure}}::h1d1f7305cfe67fdd
   9:        0x10fdb7c38 - std::sys_common::backtrace::__rust_end_short_backtrace::hd8e12e82ff026bae
  10:        0x10fdbabcd - _rust_begin_unwind
  11:        0x10fe3c0c3 - core::panicking::panic_fmt::h7894cd1015cfee41
  12:        0x11d785c46 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::incremental_verify_ich_cold
  13:        0x11c267923 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::incremental_verify_ich::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>
  14:        0x11c28606d - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>
  15:        0x11c1a495e - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_execute_query::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_query_system[1d1ba73aeba80243]::query::caches::DefaultCache<rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>>
  16:        0x11c2d1e65 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::get_query::<rustc_query_impl[37d156f36bae809d]::queries::mir_built, rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt>
  17:        0x11c3777a7 - <rustc_query_impl[37d156f36bae809d]::Queries as rustc_middle[4717f30296835aa8]::ty::query::QueryEngine>::mir_built
  18:        0x11b6a66a6 - rustc_mir_transform[5967269ab6e8435f]::mir_const
  19:        0x11c33db1d - <rustc_middle[4717f30296835aa8]::dep_graph::dep_node::DepKind as rustc_query_system[1d1ba73aeba80243]::dep_graph::DepKind>::with_deps::<rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>::{closure#1}, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>
  20:        0x11c286047 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>
  21:        0x11c1a495e - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_execute_query::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_query_system[1d1ba73aeba80243]::query::caches::DefaultCache<rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>>>
  22:        0x11c2d1f92 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::get_query::<rustc_query_impl[37d156f36bae809d]::queries::mir_const, rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt>
  23:        0x11c3777d7 - <rustc_query_impl[37d156f36bae809d]::Queries as rustc_middle[4717f30296835aa8]::ty::query::QueryEngine>::mir_const
  24:        0x11b6a73c5 - rustc_mir_transform[5967269ab6e8435f]::mir_promoted
  25:        0x11c33dbed - <rustc_middle[4717f30296835aa8]::dep_graph::dep_node::DepKind as rustc_query_system[1d1ba73aeba80243]::dep_graph::DepKind>::with_deps::<rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, (&rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_index[21b7379004f7b6e5]::vec::IndexVec<rustc_middle[4717f30296835aa8]::mir::Promoted, rustc_middle[4717f30296835aa8]::mir::Body>>)>::{closure#1}, (&rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_index[21b7379004f7b6e5]::vec::IndexVec<rustc_middle[4717f30296835aa8]::mir::Promoted, rustc_middle[4717f30296835aa8]::mir::Body>>)>
  26:        0x11c286425 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, (&rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_index[21b7379004f7b6e5]::vec::IndexVec<rustc_middle[4717f30296835aa8]::mir::Promoted, rustc_middle[4717f30296835aa8]::mir::Body>>)>
  27:        0x11c1a5b47 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_execute_query::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_query_system[1d1ba73aeba80243]::query::caches::DefaultCache<rustc_middle[4717f30296835aa8]::ty::WithOptConstParam<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId>, (&rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_middle[4717f30296835aa8]::mir::Body>, &rustc_data_structures[42680eda0c4d9688]::steal::Steal<rustc_index[21b7379004f7b6e5]::vec::IndexVec<rustc_middle[4717f30296835aa8]::mir::Promoted, rustc_middle[4717f30296835aa8]::mir::Body>>)>>
  28:        0x11c2bdab8 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::get_query::<rustc_query_impl[37d156f36bae809d]::queries::mir_promoted, rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt>
  29:        0x11c377997 - <rustc_query_impl[37d156f36bae809d]::Queries as rustc_middle[4717f30296835aa8]::ty::query::QueryEngine>::mir_promoted
  30:        0x11bd4c546 - rustc_borrowck[4c7f1bc30a6a378d]::mir_borrowck
  31:        0x11bd2d1f5 - <rustc_borrowck[4c7f1bc30a6a378d]::provide::{closure#0} as core[7fe5ef5db7b67845]::ops::function::FnOnce<(rustc_middle[4717f30296835aa8]::ty::context::TyCtxt, rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId)>>::call_once
  32:        0x11c4bbe58 - <rustc_query_system[1d1ba73aeba80243]::dep_graph::graph::DepGraph<rustc_middle[4717f30296835aa8]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[4717f30296835aa8]::ty::context::TyCtxt, rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId, &rustc_middle[4717f30296835aa8]::mir::query::BorrowCheckResult>
  33:        0x11c1cc6dd - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_execute_query::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_query_system[1d1ba73aeba80243]::query::caches::DefaultCache<rustc_span[1da87cb7d9d2b509]::def_id::LocalDefId, &rustc_middle[4717f30296835aa8]::mir::query::BorrowCheckResult>>
  34:        0x11c2bd823 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::get_query::<rustc_query_impl[37d156f36bae809d]::queries::mir_borrowck, rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt>
  35:        0x118a7defb - <rustc_session[f9ac50bf1960ebc9]::session::Session>::time::<(), rustc_interface[a01dc1bc136058fc]::passes::analysis::{closure#2}>
  36:        0x118acdf53 - rustc_interface[a01dc1bc136058fc]::passes::analysis
  37:        0x11c4f28da - <rustc_query_system[1d1ba73aeba80243]::dep_graph::graph::DepGraph<rustc_middle[4717f30296835aa8]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[4717f30296835aa8]::ty::context::TyCtxt, (), core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>
  38:        0x11c25715e - rustc_query_system[1d1ba73aeba80243]::query::plumbing::try_execute_query::<rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt, rustc_query_system[1d1ba73aeba80243]::query::caches::DefaultCache<(), core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>>
  39:        0x11c2d0ec9 - rustc_query_system[1d1ba73aeba80243]::query::plumbing::get_query::<rustc_query_impl[37d156f36bae809d]::queries::analysis, rustc_query_impl[37d156f36bae809d]::plumbing::QueryCtxt>
  40:        0x118984db6 - <rustc_interface[a01dc1bc136058fc]::passes::QueryContext>::enter::<rustc_driver[5519141fff5a68e4]::run_compiler::{closure#1}::{closure#2}::{closure#3}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>
  41:        0x1189c911d - rustc_span[1da87cb7d9d2b509]::with_source_map::<core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>, rustc_interface[a01dc1bc136058fc]::interface::run_compiler<core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>, rustc_driver[5519141fff5a68e4]::run_compiler::{closure#1}>::{closure#0}::{closure#1}>
  42:        0x1189b8a2c - <scoped_tls[91bb82b093e5659a]::ScopedKey<rustc_span[1da87cb7d9d2b509]::SessionGlobals>>::set::<rustc_interface[a01dc1bc136058fc]::interface::run_compiler<core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>, rustc_driver[5519141fff5a68e4]::run_compiler::{closure#1}>::{closure#0}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>
  43:        0x11898834a - std[a328e7b00c61b6a2]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[a01dc1bc136058fc]::util::run_in_thread_pool_with_globals<rustc_interface[a01dc1bc136058fc]::interface::run_compiler<core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>, rustc_driver[5519141fff5a68e4]::run_compiler::{closure#1}>::{closure#0}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>
  44:        0x11896e44b - <<std[a328e7b00c61b6a2]::thread::Builder>::spawn_unchecked_<rustc_interface[a01dc1bc136058fc]::util::run_in_thread_pool_with_globals<rustc_interface[a01dc1bc136058fc]::interface::run_compiler<core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>, rustc_driver[5519141fff5a68e4]::run_compiler::{closure#1}>::{closure#0}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[7fe5ef5db7b67845]::result::Result<(), rustc_errors[8f127cc083e3e66e]::ErrorGuaranteed>>::{closure#1} as core[7fe5ef5db7b67845]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  45:        0x10fdc4287 - std::sys::unix::thread::Thread::new::thread_start::h7b576c3bd89f934a
  46:     0x7ff81aee3259 - __pthread_start

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.66.0 (69f9c33d7 2022-12-12) running on x86_64-apple-darwin

note: compiler flags: --crate-type bin -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
#0 [mir_built] building MIR for `aws::check_aws_keys`
#1 [mir_const] preparing `aws::check_aws_keys` for borrow checking
#2 [mir_promoted] processing MIR for `aws::check_aws_keys`
#3 [mir_borrowck] borrow-checking `aws::check_aws_keys`
#4 [analysis] running analysis passes on this crate
Large debug output from some object ``` thread 'rustc' panicked at 'Found unstable fingerprints for mir_built(9d8933088bd2de00-2b70151a887b6f9e): Steal { value: RwLock(RefCell { value: Some(Body { basic_blocks: BasicBlocks { basic_blocks: [BasicBlockData { statements: [StorageLive(_2), StorageLive(_3)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:12:19: 12:49 (#0), scope: scope[0] }, kind: _3 = Runtime::new() -> [return: bb1, unwind: bb41] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:12:19: 12:58 (#0), scope: scope[0] }, kind: _2 = Result::::unwrap(move _3) -> [return: bb2, unwind: bb40] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_3), FakeRead(ForLet(None), _2), StorageLive(_4), StorageLive(_5), _5 = &_2, StorageLive(_6), StorageLive(_7), _7 = [generator@src/aws.rs:13:39: 38:6 (#0)] { matches: move _1 }], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:13:33: 38:6 (#0), scope: scope[1] }, kind: _6 = std::future::from_generator::<[static generator@src/aws.rs:13:39: 38:6]>(move _7) -> [return: bb3, unwind: bb38] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_7)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:13:19: 38:7 (#0), scope: scope[1] }, kind: _4 = Runtime::spawn::>>(move _5, move _6) -> [return: bb4, unwind: bb37] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_6), StorageDead(_5), FakeRead(ForLet(None), _4), StorageLive(_8), StorageLive(_9), StorageLive(_10), StorageLive(_11), _11 = &_2, StorageLive(_12), _12 = move _4], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:8: 39:33 (#0), scope: scope[2] }, kind: _10 = Runtime::block_on::>>(move _11, move _12) -> [return: bb5, unwind: bb35] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_12), StorageDead(_11)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#277), scope: scope[2] }, kind: _9 = , JoinError> as Try>::branch(move _10) -> [return: bb6, unwind: bb34] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_10), FakeRead(ForMatchedPlace(None), _9), _13 = discriminant(_9)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#277), scope: scope[2] }, kind: switchInt(move _13) -> [0_isize: bb7, 1_isize: bb8, otherwise: bb9] }), is_cleanup: false }, BasicBlockData { statements: [StorageLive(_17), _17 = move ((_9 as Continue).0: std::vec::Vec), _8 = move _17], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#0), scope: scope[2] }, kind: drop(_17) -> [return: bb15, unwind: bb31] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] }, kind: falseEdge -> [real: bb10, imaginary: bb7] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#277), scope: scope[2] }, kind: unreachable }), is_cleanup: false }, BasicBlockData { statements: [StorageLive(_14), _14 = move ((_9 as Break).0: std::result::Result), StorageLive(_16), _16 = move _14], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#277), scope: scope[4] }, kind: _0 = , anyhow::Error> as FromResidual>>::from_residual(move _16) -> [return: bb11, unwind: bb29] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_16)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[4] }, kind: goto -> bb22 }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[4] }, kind: unreachable }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] }, kind: drop(_14) -> [return: bb14, unwind: bb31] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_14)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] }, kind: goto -> bb16 }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_17)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#0), scope: scope[2] }, kind: goto -> bb16 }), is_cleanup: false }, BasicBlockData { statements: [_0 = Result::, anyhow::Error>::Ok(move _8)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:34: 39:35 (#0), scope: scope[2] }, kind: drop(_8) -> [return: bb17, unwind: bb31] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_8)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[1] }, kind: drop(_4) -> [return: bb18, unwind: bb32] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_4)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_2) -> [return: bb19, unwind: bb33] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_2)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_9) -> [return: bb20, unwind: bb41] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_9)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_1) -> [return: bb21, unwind: bb42] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:2: 40:2 (#0), scope: scope[0] }, kind: goto -> bb28 }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] }, kind: drop(_14) -> [return: bb23, unwind: bb31] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_14), StorageDead(_8)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[1] }, kind: drop(_4) -> [return: bb24, unwind: bb32] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_4)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_2) -> [return: bb25, unwind: bb33] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_2)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_9) -> [return: bb26, unwind: bb41] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_9)], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_1) -> [return: bb27, unwind: bb42] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:2: 40:2 (#0), scope: scope[0] }, kind: goto -> bb28 }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:2: 40:2 (#0), scope: scope[0] }, kind: return }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#277), scope: scope[4] }, kind: drop(_16) -> bb30 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] }, kind: drop(_14) -> bb31 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[1] }, kind: drop(_4) -> bb32 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_2) -> bb33 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_9) -> bb41 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#277), scope: scope[2] }, kind: drop(_10) -> bb36 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:39:32: 39:33 (#0), scope: scope[2] }, kind: drop(_12) -> bb36 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[1] }, kind: drop(_4) -> bb39 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:38:6: 38:7 (#0), scope: scope[1] }, kind: drop(_6) -> bb39 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:38:5: 38:6 (#0), scope: scope[1] }, kind: drop(_7) -> bb39 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_2) -> bb41 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:12:57: 12:58 (#0), scope: scope[0] }, kind: drop(_3) -> bb41 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:40:1: 40:2 (#0), scope: scope[0] }, kind: drop(_1) -> bb42 }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src/aws.rs:10:1: 40:2 (#0), scope: scope[0] }, kind: resume }), is_cleanup: true }], predecessor_cache: PredecessorCache { cache: OnceCell(Uninit) }, switch_source_cache: SwitchSourceCache { cache: OnceCell(Uninit) }, is_cyclic: GraphIsCyclicCache { cache: OnceCell(Uninit) }, postorder_cache: PostorderCache { cache: OnceCell(Uninit) } }, phase: Built, pass_count: 1, source: MirSource { instance: Item(WithOptConstParam { did: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys), const_param_did: None }), promoted: None }, source_scopes: [SourceScopeData { span: src/aws.rs:10:1: 40:2 (#0), parent_scope: None, inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 0 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:12:5: 40:2 (#0), parent_scope: Some(scope[0]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 0 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:13:5: 40:2 (#0), parent_scope: Some(scope[1]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 0 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:39:33: 39:34 (#278), parent_scope: Some(scope[2]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 0 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:39:33: 39:34 (#278), parent_scope: Some(scope[3]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 330 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:39:8: 39:34 (#0), parent_scope: Some(scope[2]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 0 }, safety: Safe }) }, SourceScopeData { span: src/aws.rs:39:8: 39:34 (#0), parent_scope: Some(scope[5]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId { owner: OwnerId { def_id: DefId(0:10 ~ pypi_data_scraper[38b5]::aws::check_aws_keys) }, local_id: 321 }, safety: Safe }) }], generator: None, local_decls: [LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: None, ty: std::result::Result, anyhow::Error>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:10:54: 10:74 (#0), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Some(User(Set(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: Some(src/aws.rs:10:32: 10:49 (#0)), opt_match_place: Some((None, src/aws.rs:10:23: 10:30 (#0))), pat_span: src/aws.rs:10:23: 10:30 (#0) })))), internal: false, is_block_tail: None, ty: std::vec::Vec, user_ty: None, source_info: SourceInfo { span: src/aws.rs:10:23: 10:30 (#0), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Some(User(Set(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((None, src/aws.rs:12:19: 12:58 (#0))), pat_span: src/aws.rs:12:9: 12:16 (#0) })))), internal: false, is_block_tail: None, ty: tokio::runtime::Runtime, user_ty: None, source_info: SourceInfo { span: src/aws.rs:12:9: 12:16 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: None, ty: std::result::Result, user_ty: None, source_info: SourceInfo { span: src/aws.rs:12:19: 12:49 (#0), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Some(User(Set(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((None, src/aws.rs:13:19: 38:7 (#0))), pat_span: src/aws.rs:13:9: 13:16 (#0) })))), internal: false, is_block_tail: None, ty: tokio::task::JoinHandle>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:13:9: 13:16 (#0), scope: scope[1] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: None, ty: &tokio::runtime::Runtime, user_ty: None, source_info: SourceInfo { span: src/aws.rs:13:19: 38:7 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: None, ty: impl std::future::Future>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:13:33: 38:6 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: None, ty: [static generator@src/aws.rs:13:39: 38:6], user_ty: None, source_info: SourceInfo { span: src/aws.rs:13:39: 38:6 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Some(AggregateTemp), internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: std::vec::Vec, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: std::ops::ControlFlow, std::vec::Vec>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#277), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: std::result::Result, tokio::task::JoinError>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:8: 39:33 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: &tokio::runtime::Runtime, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:8: 39:33 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: tokio::task::JoinHandle>, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:25: 39:32 (#0), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: true, is_block_tail: None, ty: isize, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Some(User(Set(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((Some(_9), src/aws.rs:39:8: 39:34 (#277))), pat_span: src/aws.rs:39:33: 39:34 (#278) })))), internal: false, is_block_tail: None, ty: std::result::Result, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[2] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: !, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: None, internal: false, is_block_tail: Some(BlockTailInfo { tail_result_is_ignored: false, span: src/aws.rs:39:5: 39:35 (#0) }), ty: std::result::Result, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Some(User(Set(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((Some(_9), src/aws.rs:39:8: 39:34 (#277))), pat_span: src/aws.rs:39:8: 39:34 (#277) })))), internal: false, is_block_tail: None, ty: std::vec::Vec, user_ty: None, source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#0), scope: scope[2] } }], user_type_annotations: [], arg_count: 1, spread_arg: None, var_debug_info: [VarDebugInfo { name: "matches", source_info: SourceInfo { span: src/aws.rs:10:23: 10:30 (#0), scope: scope[0] }, value: _1 }, VarDebugInfo { name: "runtime", source_info: SourceInfo { span: src/aws.rs:12:9: 12:16 (#0), scope: scope[1] }, value: _2 }, VarDebugInfo { name: "checker", source_info: SourceInfo { span: src/aws.rs:13:9: 13:16 (#0), scope: scope[2] }, value: _4 }, VarDebugInfo { name: "residual", source_info: SourceInfo { span: src/aws.rs:39:33: 39:34 (#278), scope: scope[3] }, value: _14 }, VarDebugInfo { name: "val", source_info: SourceInfo { span: src/aws.rs:39:8: 39:34 (#0), scope: scope[5] }, value: _17 }], span: src/aws.rs:10:1: 40:2 (#0), required_consts: [], is_polymorphic: false, tainted_by_errors: None }) }) }', compiler/rustc_query_system/src/query/plumbing.rs:658:9 ```

@Thibaut-Le-Goff
Copy link

Thibaut-Le-Goff commented Jan 3, 2023

I had an ICE with the codes in this commit :
Thibaut-Le-Goff/Runst_-unfinished-@15a51c1

with rustc --version --verbose I get:

rustc 1.66.0 (69f9c33d7 2022-12-12)
binary: rustc
commit-hash: 69f9c33d71c871fc16ac445211281c6e7a340943
commit-date: 2022-12-12
host: x86_64-unknown-linux-gnu
release: 1.66.0
LLVM version: 15.0.2

The issue occurred when I was working on the function weight_init::which_dis in the file src/runst/weight_init.rs.

Here is the txt file with the outputs.
ICE_error_Thibaut-Le-Goff_Runst_commit_15a51c1.txt

@chenyukang
Copy link
Member

I hit this issue when working on #108938, and then git checkout master 8a73f50d875840b8077b8ec080fa41881d7ce40d, the error message is:

error: internal compiler error: encountered incremental compilation error with registered_tools(0-0)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p rust_demangler` 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 registered_tools(0-0): {clippy#0, rustfmt#0}', compiler/rustc_query_system/src/query/plumbing.rs:688:9
stack backtrace:
   0: rust_begin_unwind
             at ./library/std/src/panicking.rs:579:5
   1: core::panicking::panic_fmt
             at ./library/core/src/panicking.rs:64:14
   2: rustc_query_system::query::plumbing::incremental_verify_ich_failed
             at ./compiler/rustc_query_system/src/query/plumbing.rs:688:9
   3: rustc_query_system::query::plumbing::incremental_verify_ich::<rustc_middle::ty::context::TyCtxt, &indexmap::set::IndexSet<rustc_span::symbol::Ident, core::hash::BuildHasherDefault<rustc_hash::FxHasher>>>
             at ./compiler/rustc_query_system/src/query/plumbing.rs:610:9
   4: rustc_query_system::query::plumbing::try_load_from_disk_and_cache_in_memory::<rustc_query_impl::queries::registered_tools, rustc_query_impl::plumbing::QueryCtxt>
             at ./compiler/rustc_query_system/src/query/plumbing.rs:582:5
   5: rustc_query_system::query::plumbing::execute_job::<rustc_query_impl::queries::registered_tools, rustc_query_impl::plumbing::QueryCtxt>::{closure#3}
             at ./compiler/rustc_query_system/src/query/plumbing.rs:449:13

Follow the hint can not fix it:
cargo clean -p rust_demangler or cargo clean to allow your project to compile

By the way, cargo clean -p rust_demangler should be cargo clean -p rust-demangler.

@carols10cents
Copy link
Member

carols10cents commented Apr 27, 2023

Just hit this again for evaluate_obligation with 1.69 stable, while working on InfluxDB IOx, after a long time of not seeing this problem.

rustc --version --verbose:

rustc 1.69.0 (84c898d65 2023-04-16)
binary: rustc
commit-hash: 84c898d65adf2f39a5a98507f1fe0ce10a2b8dbc
commit-date: 2023-04-16
host: aarch64-apple-darwin
release: 1.69.0
LLVM version: 15.0.7
Backtrace

error[E0599]: the method `and_then` exists for struct `Chain<Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<...>>>>, ...>`, but its trait bounds were not satisfied
   --> router/tests/common/mod.rs:179:14
    |
176 |           let handler_stack = retention_validator
    |  _____________________________-
177 | |             .and_then(schema_validator)
178 | |             .and_then(partitioner)
179 | |             .and_then(parallel_write);
    | |             -^^^^^^^^ method cannot be called due to unsatisfied trait bounds
    | |_____________|
    |
    |
   ::: /Users/carolnichols/rust/influxdb_iox/router/src/dml_handlers/chain.rs:31:1
    |
31  |   pub struct Chain<T, U> {
    |   ----------------------
    |   |
    |   doesn't satisfy `_: DmlHandlerChainExt`
    |   doesn't satisfy `_: DmlHandler`
    |
    = note: the full type name has been written to '/Users/carolnichols/rust/influxdb_iox/target/debug/deps/http-3f8d77dc51fec4bb.long-type-10401456881853157544.txt'
    = note: the following trait bounds were not satisfied:
            `router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`
            `&router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `&router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`
            `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`

error[E0599]: the method `and_then` exists for struct `Chain<Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<...>>>>, ...>`, but its trait bounds were not satisfied
   --> router/tests/common/mod.rs:179:14
    |
176 |           let handler_stack = retention_validator
    |  _____________________________-
177 | |             .and_then(schema_validator)
178 | |             .and_then(partitioner)
179 | |             .and_then(parallel_write);
    | |             -^^^^^^^^ method cannot be called due to unsatisfied trait bounds
    | |_____________|
    |
    |
   ::: /Users/carolnichols/rust/influxdb_iox/router/src/dml_handlers/chain.rs:31:1
    |
31  |   pub struct Chain<T, U> {
    |   ----------------------
    |   |
    |   doesn't satisfy `_: DmlHandlerChainExt`
    |   doesn't satisfy `_: DmlHandler`
    |
    = note: the full type name has been written to '/Users/carolnichols/rust/influxdb_iox/target/debug/deps/grpc-3375cce1e68ab950.long-type-10547554907313205075.txt'
    = note: the following trait bounds were not satisfied:
            `router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`
            `&router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `&router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`
            `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: router::dml_handlers::DmlHandler`
            which is required by `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<RetentionValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>, SchemaValidator<Arc<ReadThroughCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>, Partitioner>: DmlHandlerChainExt`

error[E0599]: the method `and_then` exists for struct `Chain<Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<...>>>>>>>>>, ...>, ...>`, but its trait bounds were not satisfied
   --> ioxd_router/src/lib.rs:343:10
    |
334 |       let handler_stack = retention_validator
    |  _________________________-
335 | |         .and_then(schema_validator)
336 | |         .and_then(partitioner)
337 | |         // Once writes have been partitioned, they are processed in parallel.
...   |
342 | |         // operation.
343 | |         .and_then(InstrumentationDecorator::new(
    | |         -^^^^^^^^ method cannot be called due to unsatisfied trait bounds
    | |_________|
    |
    |
   ::: /Users/carolnichols/rust/influxdb_iox/router/src/dml_handlers/chain.rs:31:1
    |
31  |   pub struct Chain<T, U> {
    |   ----------------------
    |   |
    |   doesn't satisfy `_: DmlHandlerChainExt`
    |   doesn't satisfy `_: DmlHandler`
    |
    = note: the full type name has been written to '/Users/carolnichols/rust/influxdb_iox/target/debug/deps/ioxd_router-28fbc6aba03968a6.long-type-9571234836598881310.txt'
    = note: the following trait bounds were not satisfied:
            `router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`
            `&router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `&router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`
            `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`

error: internal compiler error: encountered incremental compilation error with evaluate_obligation(c87e8d7be8b35fff-23a633ac04958b7e)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p http` 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 evaluate_obligation(c87e8d7be8b35fff-23a633ac04958b7e): Ok(EvaluatedToErr)', compiler/rustc_query_system/src/query/plumbing.rs:677:9
stack backtrace:
error: internal compiler error: encountered incremental compilation error with evaluate_obligation(c87e8d7be8b35fff-23a633ac04958b7e)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p grpc` 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 evaluate_obligation(c87e8d7be8b35fff-23a633ac04958b7e): Ok(EvaluatedToErr)', compiler/rustc_query_system/src/query/plumbing.rs:677:9
stack backtrace:
error[E0599]: the method `and_then` exists for struct `Chain<Chain<InstrumentationDecorator<RetentionValidator<Arc<ReadThroughCache<Arc<InstrumentedCache<Arc<ShardedCache<Arc<...>>>>>>>>>, ...>, ...>`, but its trait bounds were not satisfied
   --> ioxd_router/src/lib.rs:343:10
    |
334 |       let handler_stack = retention_validator
    |  _________________________-
335 | |         .and_then(schema_validator)
336 | |         .and_then(partitioner)
337 | |         // Once writes have been partitioned, they are processed in parallel.
...   |
342 | |         // operation.
343 | |         .and_then(InstrumentationDecorator::new(
    | |         -^^^^^^^^ method cannot be called due to unsatisfied trait bounds
    | |_________|
    |
    |
   ::: /Users/carolnichols/rust/influxdb_iox/router/src/dml_handlers/chain.rs:31:1
    |
31  |   pub struct Chain<T, U> {
    |   ----------------------
    |   |
    |   doesn't satisfy `_: DmlHandlerChainExt`
    |   doesn't satisfy `_: DmlHandler`
    |
    = note: the full type name has been written to '/Users/carolnichols/rust/influxdb_iox/target/debug/deps/ioxd_router-5d1cf8648587517f.long-type-4254684705345345092.txt'
    = note: the following trait bounds were not satisfied:
            `router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`
            `&router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `&router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`
            `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: router::dml_handlers::DmlHandler`
            which is required by `&mut router::dml_handlers::Chain<router::dml_handlers::Chain<InstrumentationDecorator<RetentionValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>, InstrumentationDecorator<SchemaValidator<std::sync::Arc<ReadThroughCache<std::sync::Arc<InstrumentedCache<std::sync::Arc<ShardedCache<std::sync::Arc<router::namespace_cache::MemoryNamespaceCache>>>>>>>>>>, InstrumentationDecorator<Partitioner>>: DmlHandlerChainExt`

   0:        0x102f40468 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h105074e3d85f800b
   0:        0x102cec468 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h105074e3d85f800b
   1:        0x102f93388 - core::fmt::write::h34766cf8fff7af1e
   1:        0x102d3f388 - core::fmt::write::h34766cf8fff7af1e
   2:        0x102f361e0 - std::io::Write::write_fmt::hd64c4cf6e7adea59
   2:        0x102ce21e0 - std::io::Write::write_fmt::hd64c4cf6e7adea59
   3:        0x102f4027c - std::sys_common::backtrace::print::h2a6828a537036cf9
   3:        0x102cec27c - std::sys_common::backtrace::print::h2a6828a537036cf9
   4:        0x102ceed04 - std::panicking::default_hook::{{closure}}::h4e82ce6ccef941b2
   4:        0x102f42d04 - std::panicking::default_hook::{{closure}}::h4e82ce6ccef941b2
   5:        0x102ceea5c - std::panicking::default_hook::h29f62f8795c5cb00
   5:        0x102f42a5c - std::panicking::default_hook::h29f62f8795c5cb00
For more information about this error, try `rustc --explain E0599`.
   6:        0x10adc174c - rustc_driver_impl[4da67b3d18d5a97a]::DEFAULT_HOOK::{closure#0}::{closure#0}
   6:        0x10b01574c - rustc_driver_impl[4da67b3d18d5a97a]::DEFAULT_HOOK::{closure#0}::{closure#0}
   7:        0x102cef3fc - std::panicking::rust_panic_with_hook::h19862cbd0fbda7ba
   7:        0x102f433fc - std::panicking::rust_panic_with_hook::h19862cbd0fbda7ba
   8:        0x102f431f4 - std::panicking::begin_panic_handler::{{closure}}::h3f3626935e1669fe
   8:        0x102cef1f4 - std::panicking::begin_panic_handler::{{closure}}::h3f3626935e1669fe
   9:        0x102cec888 - std::sys_common::backtrace::__rust_end_short_backtrace::h5054ef52bd507d0a
   9:        0x102f40888 - std::sys_common::backtrace::__rust_end_short_backtrace::h5054ef52bd507d0a
  10:        0x102ceef50 - _rust_begin_unwind
  10:        0x102f42f50 - _rust_begin_unwind
  11:        0x102fbe608 - core::panicking::panic_fmt::h7e47e10600a90221
  12:        0x10f29de24 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::incremental_verify_ich_failed
  13:        0x10e02a20c - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::evaluate_obligation, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  11:        0x102d6a608 - core::panicking::panic_fmt::h7e47e10600a90221
  14:        0x10e17fa24 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::evaluate_obligation
  12:        0x10f049e24 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::incremental_verify_ich_failed
  13:        0x10ddd620c - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::evaluate_obligation, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  14:        0x10df2ba24 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::evaluate_obligation
  15:        0x10eae8d60 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation
  15:        0x10e894d60 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation
  16:        0x10eae8ee0 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation_no_overflow
  16:        0x10e894ee0 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation_no_overflow
  17:        0x10eae8a44 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::predicate_may_hold
  17:        0x10e894a44 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt as rustc_trait_selection[9b8c5d34047d54d3]::traits::query::evaluate_obligation::InferCtxtExt>::predicate_may_hold
  18:        0x10d31a524 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt>::probe::<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_probe::{closure#0}>
  18:        0x10d0c6524 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt>::probe::<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_probe::{closure#0}>
  19:        0x10d3799b4 - <alloc[f251364f33aae5a4]::vec::Vec<(&rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult)> as alloc[f251364f33aae5a4]::vec::spec_from_iter::SpecFromIter<(&rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult), core[446d629763b4aa]::iter::adapters::filter::Filter<core[446d629763b4aa]::iter::adapters::map::Map<core[446d629763b4aa]::slice::iter::Iter<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_candidates::{closure#0}>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_candidates::{closure#1}>>>::from_iter
  20:        0x10d3e5ba0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_method
  21:        0x10d3e5630 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_all_method
  22:        0x10d3e5230 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_core
  23:        0x10d3e4b50 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick
  19:        0x10d1259b4 - <alloc[f251364f33aae5a4]::vec::Vec<(&rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult)> as alloc[f251364f33aae5a4]::vec::spec_from_iter::SpecFromIter<(&rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeResult), core[446d629763b4aa]::iter::adapters::filter::Filter<core[446d629763b4aa]::iter::adapters::map::Map<core[446d629763b4aa]::slice::iter::Iter<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Candidate>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_candidates::{closure#0}>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::consider_candidates::{closure#1}>>>::from_iter
  20:        0x10d191ba0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_method
  21:        0x10d191630 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_all_method
  22:        0x10d191230 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick_core
  24:        0x10d319634 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt>::probe::<core[446d629763b4aa]::result::Result<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Pick, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::MethodError>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_op<<rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_for_name::{closure#0}, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Pick>::{closure#4}>
  25:        0x10d2f1378 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_for_name
  26:        0x10d2f2e5c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::lookup_method
  27:        0x10d2e4300 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  28:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  29:        0x10d2aec8c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_argument_types
  23:        0x10d190b50 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::ProbeContext>::pick
  30:        0x10d290b10 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::confirm_builtin_call
  24:        0x10d0c5634 - <rustc_infer[9cb72f641b6c399a]::infer::InferCtxt>::probe::<core[446d629763b4aa]::result::Result<rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Pick, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::MethodError>, <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_op<<rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_for_name::{closure#0}, rustc_hir_typeck[4ee6bcd98d40a6cc]::method::probe::Pick>::{closure#4}>
  25:        0x10d09d378 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::probe_for_name
  26:        0x10d09ee5c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::lookup_method
  31:        0x10d28f9a0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_call
  27:        0x10d090300 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  32:        0x10d2e4744 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  33:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  28:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  29:        0x10d05ac8c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_argument_types
  30:        0x10d03cb10 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::confirm_builtin_call
  34:        0x10d2dfeb0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_match::{closure#0}
  31:        0x10d03b9a0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_call
  32:        0x10d090744 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  35:        0x10d2e4720 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  33:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  36:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  37:        0x10d2b5304 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_block_with_expected
  38:        0x10d2e4940 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  39:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  34:        0x10d08beb0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_match::{closure#0}
  35:        0x10d090720 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  40:        0x10d2e4284 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  41:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  36:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  42:        0x10d2b5304 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_block_with_expected
  37:        0x10d061304 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_block_with_expected
  43:        0x10d2e4940 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  38:        0x10d090940 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  44:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  39:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  45:        0x10d2a0f90 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_return_expr
  46:        0x10d39e180 - rustc_hir_typeck[4ee6bcd98d40a6cc]::check::check_fn
  47:        0x10d2e1efc - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_closure
  48:        0x10d2e4240 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  40:        0x10d090284 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  49:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  41:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  42:        0x10d061304 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_block_with_expected
  50:        0x10d2aec8c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_argument_types
  43:        0x10d090940 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  51:        0x10d290b10 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::confirm_builtin_call
  52:        0x10d28f9a0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_call
  53:        0x10d2e4744 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  54:        0x10d29fd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  55:        0x10d2a0f90 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_return_expr
  44:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  45:        0x10d04cf90 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_return_expr
  56:        0x10d39e180 - rustc_hir_typeck[4ee6bcd98d40a6cc]::check::check_fn
  57:        0x10d3c2470 - rustc_hir_typeck[4ee6bcd98d40a6cc]::typeck
  46:        0x10d14a180 - rustc_hir_typeck[4ee6bcd98d40a6cc]::check::check_fn
  58:        0x10e143a24 - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, rustc_span[9bec1e8d1a20d9df]::def_id::LocalDefId, &rustc_middle[a12d4e31e9c7c7b2]::ty::typeck_results::TypeckResults>::{closure#0}, &rustc_middle[a12d4e31e9c7c7b2]::ty::typeck_results::TypeckResults>
  47:        0x10d08defc - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_closure
  48:        0x10d090240 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  59:        0x10e0b0114 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  49:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  50:        0x10d05ac8c - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_argument_types
  51:        0x10d03cb10 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::confirm_builtin_call
  52:        0x10d03b9a0 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_call
  60:        0x10df98550 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::force_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>
  61:        0x10e1f645c - rustc_query_impl[4d60d89ac47f5f83]::plumbing::force_from_dep_node::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck>
  62:        0x10e1c613c - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  63:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  53:        0x10d090744 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_kind
  54:        0x10d04bd60 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
  55:        0x10d04cf90 - <rustc_hir_typeck[4ee6bcd98d40a6cc]::fn_ctxt::FnCtxt>::check_return_expr
  56:        0x10d14a180 - rustc_hir_typeck[4ee6bcd98d40a6cc]::check::check_fn
  57:        0x10d16e470 - rustc_hir_typeck[4ee6bcd98d40a6cc]::typeck
  64:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  65:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  66:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  67:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  68:        0x10e1c6184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  58:        0x10deefa24 - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, rustc_span[9bec1e8d1a20d9df]::def_id::LocalDefId, &rustc_middle[a12d4e31e9c7c7b2]::ty::typeck_results::TypeckResults>::{closure#0}, &rustc_middle[a12d4e31e9c7c7b2]::ty::typeck_results::TypeckResults>
  59:        0x10de5c114 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  60:        0x10dd44550 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::force_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>
  69:        0x10e1c4bb8 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  70:        0x10e0b1c80 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::type_of, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  71:        0x10e167350 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::type_of
  72:        0x10d43bcf8 - rustc_hir_analysis[5e14f7d1cb611e1f]::check::check::check_item_type
  73:        0x10d444680 - rustc_hir_analysis[5e14f7d1cb611e1f]::check::check::check_mod_item_types
  61:        0x10dfa245c - rustc_query_impl[4d60d89ac47f5f83]::plumbing::force_from_dep_node::<rustc_query_impl[4d60d89ac47f5f83]::queries::typeck>
  62:        0x10df7213c - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  63:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  64:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
error: could not compile `ioxd_router` due to previous error
  74:        0x10e1426bc - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, core[446d629763b4aa]::option::Option<rustc_span[9bec1e8d1a20d9df]::symbol::Symbol>, ()>::{closure#0}, ()>
  65:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  66:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  67:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  75:        0x10e0363bc - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::check_mod_item_types, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  76:        0x10e16f964 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::check_mod_item_types
  68:        0x10df72184 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  77:        0x10d49ba4c - <rustc_middle[a12d4e31e9c7c7b2]::hir::map::Map>::for_each_module::<rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate::{closure#6}::{closure#0}>
  69:        0x10df70bb8 - <rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::try_mark_green::<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  70:        0x10de5dc80 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::type_of, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  78:        0x10d4bba08 - <rustc_session[f1d766c083bcad2f]::session::Session>::time::<(), rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate::{closure#6}>
  71:        0x10df13350 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::type_of
  79:        0x10d500d50 - rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate
  72:        0x10d1e7cf8 - rustc_hir_analysis[5e14f7d1cb611e1f]::check::check::check_item_type
  80:        0x10b0b266c - rustc_interface[812bb1defcb7896d]::passes::analysis
  73:        0x10d1f0680 - rustc_hir_analysis[5e14f7d1cb611e1f]::check::check::check_mod_item_types
  74:        0x10deee6bc - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, core[446d629763b4aa]::option::Option<rustc_span[9bec1e8d1a20d9df]::symbol::Symbol>, ()>::{closure#0}, ()>
  81:        0x10e147f64 - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, (), core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  75:        0x10dde23bc - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::check_mod_item_types, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  82:        0x10e0b2df4 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::analysis, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  76:        0x10df1b964 - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::check_mod_item_types
  83:        0x10e16793c - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::analysis
  84:        0x10b0625c0 - <rustc_middle[a12d4e31e9c7c7b2]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  77:        0x10d247a4c - <rustc_middle[a12d4e31e9c7c7b2]::hir::map::Map>::for_each_module::<rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate::{closure#6}::{closure#0}>
  78:        0x10d267a08 - <rustc_session[f1d766c083bcad2f]::session::Session>::time::<(), rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate::{closure#6}>
  79:        0x10d2acd50 - rustc_hir_analysis[5e14f7d1cb611e1f]::check_crate
error: could not compile `ioxd_router` due to previous error
  85:        0x10b061b20 - rustc_span[9bec1e8d1a20d9df]::with_source_map::<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  80:        0x10ae5e66c - rustc_interface[812bb1defcb7896d]::passes::analysis
  81:        0x10def3f64 - <rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind as rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::DepKind>::with_deps::<<rustc_query_system[4ec8b7e6ed7d2b80]::dep_graph::graph::DepGraph<rustc_middle[a12d4e31e9c7c7b2]::dep_graph::dep_node::DepKind>>::with_task_impl<rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt, (), core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  86:        0x10b023f84 - std[57ecbc5b2c1792f]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[812bb1defcb7896d]::util::run_in_thread_pool_with_globals<rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  82:        0x10de5edf4 - rustc_query_system[4ec8b7e6ed7d2b80]::query::plumbing::try_execute_query::<rustc_query_impl[4d60d89ac47f5f83]::queries::analysis, rustc_query_impl[4d60d89ac47f5f83]::plumbing::QueryCtxt>
  83:        0x10df1393c - <rustc_query_impl[4d60d89ac47f5f83]::Queries as rustc_middle[a12d4e31e9c7c7b2]::ty::query::QueryEngine>::analysis
  84:        0x10ae0e5c0 - <rustc_middle[a12d4e31e9c7c7b2]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  85:        0x10ae0db20 - rustc_span[9bec1e8d1a20d9df]::with_source_map::<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  87:        0x10b025d20 - <<std[57ecbc5b2c1792f]::thread::Builder>::spawn_unchecked_<rustc_interface[812bb1defcb7896d]::util::run_in_thread_pool_with_globals<rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#1} as core[446d629763b4aa]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  88:        0x102f4ba24 - std::sys::unix::thread::Thread::new::thread_start::h5db5d66cd91ffb33
  86:        0x10adcff84 - std[57ecbc5b2c1792f]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[812bb1defcb7896d]::util::run_in_thread_pool_with_globals<rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>
  87:        0x10add1d20 - <<std[57ecbc5b2c1792f]::thread::Builder>::spawn_unchecked_<rustc_interface[812bb1defcb7896d]::util::run_in_thread_pool_with_globals<rustc_interface[812bb1defcb7896d]::interface::run_compiler<core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>, rustc_driver_impl[4da67b3d18d5a97a]::run_compiler::{closure#1}>::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[446d629763b4aa]::result::Result<(), rustc_span[9bec1e8d1a20d9df]::ErrorGuaranteed>>::{closure#1} as core[446d629763b4aa]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  88:        0x102cf7a24 - std::sys::unix::thread::Thread::new::thread_start::h5db5d66cd91ffb33
  89:        0x1990f3fa8 - __pthread_joiner_wake

  89:        0x1990f3fa8 - __pthread_joiner_wake

error: 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.69.0 (84c898d65 2023-04-16) running on aarch64-apple-darwin
error: the compiler unexpectedly panicked. this is a bug.

note: compiler flags: -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C incremental=[REDACTED]

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

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

query stack during panic:

note: rustc 1.69.0 (84c898d65 2023-04-16) running on aarch64-apple-darwin

note: compiler flags: -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
#0 [evaluate_obligation] evaluating trait selection obligation `router::dml_handlers::instrumentation::InstrumentationDecorator<router::dml_handlers::chain::Chain<router::dml_handlers::chain::Chain<router::dml_handlers::chain::Chain<router::dml_handlers::retention_validation::RetentionValidator<alloc::sync::Arc<router::namespace_cache::read_through_cache::ReadThroughCache<alloc::sync::Arc<router::namespace_cache::sharded_cache::ShardedCache<alloc::sync::Arc<router::namespace_cache::memory::MemoryNamespaceCache>>>>>>, router::dml_handlers::schema_validation::SchemaValidator<alloc::sync::Arc<router::namespace_cache::read_through_cache::ReadThroughCache<alloc::sync::Arc<router::namespace_cache::sharded_cache::ShardedCache<alloc::sync::Arc<router::namespace_cache::memory::MemoryNamespaceCache>>>>>>>, router::dml_handlers::partitioner::Partitioner>, router::dml_handlers::fan_out::FanOutAdaptor<router::dml_handlers::rpc_write::RpcWrite<alloc::sync::Arc<router::dml_handlers::rpc_write::client::mock::MockWriteClient>>, alloc::vec::Vec<router::dml_handlers::partitioner::Partitioned<hashbrown::map::HashMap<data_types::TableId, (alloc::string::String, mutable_batch::MutableBatch)>>>>>>: router::dml_handlers::r#trait::DmlHandler`
#0 [evaluate_obligation] evaluating trait selection obligation `router::dml_handlers::instrumentation::InstrumentationDecorator<router::dml_handlers::chain::Chain<router::dml_handlers::chain::Chain<router::dml_handlers::chain::Chain<router::dml_handlers::retention_validation::RetentionValidator<alloc::sync::Arc<router::namespace_cache::read_through_cache::ReadThroughCache<alloc::sync::Arc<router::namespace_cache::sharded_cache::ShardedCache<alloc::sync::Arc<router::namespace_cache::memory::MemoryNamespaceCache>>>>>>, router::dml_handlers::schema_validation::SchemaValidator<alloc::sync::Arc<router::namespace_cache::read_through_cache::ReadThroughCache<alloc::sync::Arc<router::namespace_cache::sharded_cache::ShardedCache<alloc::sync::Arc<router::namespace_cache::memory::MemoryNamespaceCache>>>>>>>, router::dml_handlers::partitioner::Partitioner>, router::dml_handlers::fan_out::FanOutAdaptor<router::dml_handlers::rpc_write::RpcWrite<alloc::sync::Arc<router::dml_handlers::rpc_write::client::mock::MockWriteClient>>, alloc::vec::Vec<router::dml_handlers::partitioner::Partitioned<hashbrown::map::HashMap<data_types::TableId, (alloc::string::String, mutable_batch::MutableBatch)>>>>>>: router::dml_handlers::r#trait::DmlHandler`
#1 [typeck] type-checking `common::<impl at router/tests/common/mod.rs:140:1: 140:17>::write_lp`
#2 [type_of] computing type of `common::<impl at router/tests/common/mod.rs:140:1: 140:17>::write_lp::{opaque#1}`
#1 [typeck] type-checking `common::<impl at router/tests/common/mod.rs:140:1: 140:17>::write_lp`
#3 [check_mod_item_types] checking item types in module `common`
#2 [type_of] computing type of `common::<impl at router/tests/common/mod.rs:140:1: 140:17>::write_lp::{opaque#1}`
#4 [analysis] running analysis passes on this crate
end of query stack
#3 [check_mod_item_types] checking item types in module `common`
#4 [analysis] running analysis passes on this crate
end of query stack
encountered while trying to mark dependency green: typeck(b86577fc7f83c507-318c169493102de0)
encountered while trying to mark dependency green: thir_body(93b93ee5ce30ce31-fcf1e3c9721c3b7)
encountered while trying to mark dependency green: mir_built(93b93ee5ce30ce31-fcf1e3c9721c3b7)
encountered while trying to mark dependency green: typeck(f4e722dc2030f5ed-4544494f74a2894f)
encountered while trying to mark dependency green: unsafety_check_result(b86577fc7f83c507-318c169493102de0)
encountered while trying to mark dependency green: mir_const(93b93ee5ce30ce31-fcf1e3c9721c3b7)
encountered while trying to mark dependency green: mir_promoted(93b93ee5ce30ce31-fcf1e3c9721c3b7)
encountered while trying to mark dependency green: thir_body(768a65407ef8cde8-4144889007a5e618)
encountered while trying to mark dependency green: mir_borrowck(b86577fc7f83c507-318c169493102de0)
encountered while trying to mark dependency green: mir_built(768a65407ef8cde8-4144889007a5e618)
encountered while trying to mark dependency green: type_of(b86577fc7f83c507-c9f6974a71c7c612)
encountered while trying to mark dependency green: unsafety_check_result(f4e722dc2030f5ed-4544494f74a2894f)
encountered while trying to mark dependency green: mir_const(768a65407ef8cde8-4144889007a5e618)
encountered while trying to mark dependency green: mir_promoted(768a65407ef8cde8-4144889007a5e618)
encountered while trying to mark dependency green: mir_borrowck(f4e722dc2030f5ed-4544494f74a2894f)
encountered while trying to mark dependency green: type_of(f4e722dc2030f5ed-d996c3ba71858dac)
error: could not compile `router` due to 2 previous errors
error: could not compile `router` due to 2 previous errors
Some errors have detailed explanations: E0050, E0061.
For more information about an error, try `rustc --explain E0050`.
error: could not compile `router` due to 29 previous errors

@xxchan

This comment was marked as resolved.

@bjorn3
Copy link
Member

bjorn3 commented May 31, 2023

Does running the first build command with RUSTFLAGS="-Zincremental-verify-ich=yes" given an ICE?

@xxchan

This comment was marked as resolved.

@xxchan

This comment was marked as resolved.

@jyn514
Copy link
Member

jyn514 commented May 31, 2023

cc @zeegomo @cjgillot

@xxchan
Copy link
Contributor

xxchan commented May 31, 2023

My issue is already fixed in latest nightly.

@jonathanhood
Copy link

I'm now seeing error messages related to this issue in 1.70.0 that did not appear in 1.69.0. I originally added info in #112479 before realizing the error message contained a link here 😅 . More context can be found in that (linked) issue.

@qredek
Copy link

qredek commented Jun 26, 2023

I also did not realise that there was a tracking issue and added details in #113062.

@temportalflux
Copy link

I frequently hit this issue with mir_built while compiling my WASM web app using Yew & Web-Sys (among many other deps). Its possible this may be addressed already by #112137, but I'm using stable not nightly, so I wont know until that is stablized. Just adding this report+log here on the off chance its useful.

Found unstable fingerprints for mir_built(11a1f347035615da-af8058392ca9b038)
error: internal compiler error: encountered incremental compilation error with mir_built(11a1f347035615da-af8058392ca9b038)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p integro_tabletop` 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_built(11a1f347035615da-af8058392ca9b038): Steal { value: RwLock(RefCell { value: Some(Body { basic_blocks: BasicBlocks { basic_blocks: [BasicBlockData { statements: [StorageLive(_4), StorageLive(_5), StorageLive(_6), _6 = move _3], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] }, kind: _5 = <impl ::yew::html::IntoPropValue<ChildrenWithProps<AnnotatedNumber>> as IntoPropValue<ChildrenRenderer<VChild<annotated_number::AnnotatedNumber>>>>::into_prop_value(move _6) -> [return: bb1, unwind: bb9] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_6), _4 = std::option::Option::<ChildrenRenderer<VChild<annotated_number::AnnotatedNumber>>>::Some(move _5)], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_5) -> [return: bb2, unwind: 
bb8] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_5)], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#16570), scope: scope[0] }, kind: drop(((*((*_1).0: std::boxed::Box<components::annotated_number::AnnotatedNumberCardPropsWrapper>)).3: std::option::Option<yew::html::ChildrenRenderer<yew::virtual_dom::VChild<components::annotated_number::AnnotatedNumber>>>)) -> [return: bb3, unwind: bb4] }), is_cleanup: false 
}, BasicBlockData { statements: [((*((*_1).0: std::boxed::Box<components::annotated_number::AnnotatedNumberCardPropsWrapper>)).3: std::option::Option<yew::html::ChildrenRenderer<yew::virtual_dom::VChild<components::annotated_number::AnnotatedNumber>>>) = move _4], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_4) -> [return: bb5, unwind: bb10] }), is_cleanup: false }, BasicBlockData { statements: [((*((*_1).0: std::boxed::Box<components::annotated_number::AnnotatedNumberCardPropsWrapper>)).3: std::option::Option<yew::html::ChildrenRenderer<yew::virtual_dom::VChild<components::annotated_number::AnnotatedNumber>>>) = move _4], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#16570), scope: scope[0] }, kind: goto -> bb8 }), is_cleanup: true }, BasicBlockData { statements: [StorageDead(_4), StorageLive(_7), _7 = PhantomData::<__YewTokenTy>, _0 = HasAnnotatedNumberCardPropschildren::<__YewTokenTy>(move _7), StorageDead(_7)], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_3) -> [return: bb6, unwind: bb11] }), is_cleanup: false }, BasicBlockData { statements: 
[], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_2) -> [return: bb7, unwind: bb12] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:38: 48:38 (#342), scope: scope[0] }, kind: return }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_4) -> [return: bb10, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, 
kind: drop(_6) -> [return: bb10, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_3) -> [return: bb11, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:37: 48:38 (#342), scope: scope[0] }, kind: drop(_2) -> [return: bb12, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] }, kind: resume }), is_cleanup: true }], cache: Cache { predecessors: OnceCell(Uninit), switch_sources: OnceCell(Uninit), is_cyclic: OnceCell(Uninit), postorder: OnceCell(Uninit) } }, phase: Built, pass_count: 0, source: MirSource { instance: Item(WithOptConstParam { did: DefId(0:6677 ~ integro_tabletop[e218]::components::annotated_number::{impl#18}::children), const_param_did: None }), promoted: None }, source_scopes: [SourceScopeData { span: src\components\annotated_number.rs:48:28: 48:38 (#342), parent_scope: None, inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData 
{ lint_root: HirId(DefId(0:6677 ~ integro_tabletop[e218]::components::annotated_number::{impl#18}::children).0), safety: Safe }) }], generator: None, local_decls: [LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: components::annotated_number::HasAnnotatedNumberCardPropschildren<__YewTokenTy>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#343), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(ImplicitSelf(MutRef))), internal: false, ty: &mut components::annotated_number::AnnotatedNumberCardPropsBuilder, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: Some(src\components\annotated_number.rs:48:28: 48:38 (#343)), opt_match_place: Some((None, src\components\annotated_number.rs:48:28: 48:38 (#342))), pat_span: src\components\annotated_number.rs:48:28: 48:38 (#342) }))), internal: false, ty: __YewTokenTy, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((None, src\components\annotated_number.rs:48:28: 48:38 (#342))), pat_span: src\components\annotated_number.rs:48:28: 48:38 (#342) }))), internal: false, ty: impl ::yew::html::IntoPropValue<ChildrenWithProps<AnnotatedNumber>>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: std::option::Option<yew::html::ChildrenRenderer<yew::virtual_dom::VChild<components::annotated_number::AnnotatedNumber>>>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(AggregateTemp), internal: false, ty: yew::html::ChildrenRenderer<yew::virtual_dom::VChild<components::annotated_number::AnnotatedNumber>>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: impl ::yew::html::IntoPropValue<ChildrenWithProps<AnnotatedNumber>>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(AggregateTemp), internal: false, ty: std::marker::PhantomData<__YewTokenTy>, user_ty: None, source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] } }], user_type_annotations: [], arg_count: 3, spread_arg: None, var_debug_info: [VarDebugInfo { name: "self", source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] }, value: _1, argument_index: Some(1) }, VarDebugInfo { name: "token", source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] }, value: _2, argument_index: Some(2) }, VarDebugInfo { name: "value", source_info: SourceInfo { span: src\components\annotated_number.rs:48:28: 48:38 (#342), scope: scope[0] }, value: _3, argument_index: Some(3) }], span: src\components\annotated_number.rs:48:28: 48:38 (#342), required_consts: [], is_polymorphic: true, injection_phase: None, tainted_by_errors: None }) }) }', /rustc/90c541806f23a127002de5b4038be731ba1458ca\compiler\rustc_query_system\src\query\plumbing.rs:715:9
stack backtrace:
   0:     0x7ff9c59b6c02 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::he4dbe7f5385cd1e2
   1:     0x7ff9c59f4f5b - core::fmt::write::h72b30843329f2c20
   2:     0x7ff9c59abe6a - <std::io::IoSliceMut as core::fmt::Debug>::fmt::h44d7f217ec8c08a4
   3:     0x7ff9c59b694b - std::sys::common::alloc::realloc_fallback::h25dd000eefb1a25f
   4:     0x7ff9c59ba2da - std::panicking::default_hook::h8d2d551f7739f430
   5:     0x7ff9c59b9f40 - std::panicking::default_hook::h8d2d551f7739f430
   6:     0x7ff9b31ff02e - rustc_driver_impl[39e757d53880b308]::describe_lints
   7:     0x7ff9c59babef - std::panicking::rust_panic_with_hook::h2561aa68cd5abc10
   8:     0x7ff9c59ba94e - <std::panicking::begin_panic_handler::StrPanicPayload as core::panic::BoxMeUp>::get::hcac4dd4b6ea7d20c
   9:     0x7ff9c59b78a9 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::he4dbe7f5385cd1e2
  10:     0x7ff9c59ba660 - rust_begin_unwind
  11:     0x7ff9c5a29165 - core::panicking::panic_fmt::he37b281957295da9
  12:     0x7ff9b50c6e0e - <&[rustc_ast[9d9e172e794f524b]::ast::Attribute] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  13:     0x7ff9b156faa4 - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  14:     0x7ff9b2c815cf - <&[rustc_type_ir[e4a94c75124a4b3a]::Variance] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  15:     0x7ff9b2b55957 - <rustc_query_impl[31ecb434a2a03a44]::Queries as rustc_middle[298b6ec0f969779]::ty::query::QueryEngine>::as_any
  16:     0x7ff9b25d58b0 - <rustc_mir_transform[d4e2a26eaceac4de]::dataflow_const_prop::DataflowConstProp as rustc_middle[298b6ec0f969779]::mir::MirPass>::is_enabled  
  17:     0x7ff9b5052c11 - <&[rustc_ast[9d9e172e794f524b]::ast::Attribute] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  18:     0x7ff9b4ffa110 - <rustc_span[ad67946381e6ba24]::hygiene::ExpnId as rustc_serialize[a924d7a59c3ae2b4]::serialize::Encodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheEncoder>>::encode
  19:     0x7ff9b1570335 - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  20:     0x7ff9b2c82b8f - <&[rustc_type_ir[e4a94c75124a4b3a]::Variance] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  21:     0x7ff9b2b55b37 - <rustc_query_impl[31ecb434a2a03a44]::Queries as rustc_middle[298b6ec0f969779]::ty::query::QueryEngine>::as_any
  22:     0x7ff9b25d6831 - <rustc_mir_transform[d4e2a26eaceac4de]::dataflow_const_prop::DataflowConstProp as rustc_middle[298b6ec0f969779]::mir::MirPass>::is_enabled
  23:     0x7ff9b504d5e2 - <&[rustc_ast[9d9e172e794f524b]::ast::Attribute] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  24:     0x7ff9b4ff598a - <rustc_span[ad67946381e6ba24]::hygiene::ExpnId as rustc_serialize[a924d7a59c3ae2b4]::serialize::Encodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheEncoder>>::encode
  25:     0x7ff9b14ee20d - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  26:     0x7ff9b2c217b1 - <&[rustc_type_ir[e4a94c75124a4b3a]::Variance] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  27:     0x7ff9b2b562ad - <rustc_query_impl[31ecb434a2a03a44]::Queries as rustc_middle[298b6ec0f969779]::ty::query::QueryEngine>::as_any
  28:     0x7ff9b28b55a2 - <rustc_middle[298b6ec0f969779]::ty::adjustment::AutoBorrowMutability as rustc_mir_build[692303aa0e857e66]::thir::cx::expr::ToBorrowKind>::to_borrow_kind
  29:     0x7ff9b14cb603 - <&rustc_data_structures[41be42171f3b2d17]::unord::UnordSet<rustc_span[ad67946381e6ba24]::def_id::LocalDefId> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  30:     0x7ff9b14eba5c - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  31:     0x7ff9b2c1f4c7 - <&[rustc_type_ir[e4a94c75124a4b3a]::Variance] as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  32:     0x7ff9b2b59d20 - <rustc_query_impl[31ecb434a2a03a44]::Queries as rustc_middle[298b6ec0f969779]::ty::query::QueryEngine>::as_any
  33:     0x7ff9b1986e7a - once_cell[b880d516fb8c3c0e]::imp::initialize_or_wait
  34:     0x7ff9b0a8e52d - rustc_interface[2aa0624475714241]::callbacks::setup_callbacks
  35:     0x7ff9b0a7acf5 - rustc_interface[2aa0624475714241]::passes::analysis
  36:     0x7ff9b15803c1 - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  37:     0x7ff9b14cc13c - <&rustc_data_structures[41be42171f3b2d17]::unord::UnordSet<rustc_span[ad67946381e6ba24]::def_id::LocalDefId> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  38:     0x7ff9b156afc5 - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  39:     0x7ff9b1613de8 - <&rustc_index[16c4f1290dbf3aed]::vec::IndexVec<rustc_middle[298b6ec0f969779]::mir::Promoted, rustc_middle[298b6ec0f969779]::mir::Body> as rustc_serialize[a924d7a59c3ae2b4]::serialize::Decodable<rustc_query_impl[31ecb434a2a03a44]::on_disk_cache::CacheDecoder>>::decode
  40:     0x7ff9b1477225 - <rustc_query_impl[31ecb434a2a03a44]::Queries as rustc_middle[298b6ec0f969779]::ty::query::QueryEngine>::try_mark_green
  41:     0x7ff9b0a27f31 - rustc_driver_impl[39e757d53880b308]::main
  42:     0x7ff9b0a35873 - <rustc_middle[298b6ec0f969779]::ty::SymbolName as core[bcfc2130cb4e43e7]::fmt::Display>::fmt
  43:     0x7ff9b0a3372d - rustc_driver_impl[39e757d53880b308]::args::arg_expand_all
  44:     0x7ff9b0a289d0 - rustc_driver_impl[39e757d53880b308]::main
  45:     0x7ff9b0a34d43 - rustc_driver_impl[39e757d53880b308]::args::arg_expand_all
  46:     0x7ff9c59ccaac - std::sys::windows::thread::Thread::new::h911abb68de5d2aa0
  47:     0x7ffa93ee7614 - BaseThreadInitThunk
  48:     0x7ffa952626b1 - RtlUserThreadStart

error: 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.70.0 (90c541806 2023-05-31) running on x86_64-pc-windows-msvc

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

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

query stack during panic:
#0 [mir_built] building MIR for `components::annotated_number::<impl at src\components\annotated_number.rs:48:28: 48:38>::children`
#1 [mir_const] preparing `components::annotated_number::<impl at src\components\annotated_number.rs:48:28: 48:38>::children` for borrow checking
#2 [mir_promoted] processing MIR for `components::annotated_number::<impl at src\components\annotated_number.rs:48:28: 48:38>::children`
#3 [mir_borrowck] borrow-checking `components::annotated_number::<impl at src\components\annotated_number.rs:48:28: 48:38>::children`
#4 [analysis] running analysis passes on this crate
end of query stack

@Oliboy50
Copy link

Oliboy50 commented Aug 30, 2023

I frequently hit this issue (using Rust 1.70.0), I wonder if this can be because of the use of the procedural macros from mockall crate (because we see Mock... traits in the errors message), and it started to happen when we moved our code to a shared lib within our cargo workspace

note: rustc 1.70.0 (90c541806 2023-05-31) running on x86_64-apple-darwin

note: compiler flags: --crate-type lib -C embed-bitcode=no -C split-debuginfo=unpacked -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
#0 [mir_built] building MIR for `domain::port::event_pusher::__mock_MockEventPusher_EventPusher::__push::<impl at shared/src/domain/port/event_pusher.rs:14:1: 14:21>::with`
#1 [mir_const] preparing `domain::port::event_pusher::__mock_MockEventPusher_EventPusher::__push::<impl at shared/src/domain/port/event_pusher.rs:14:1: 14:21>::with` for borrow checking
#2 [mir_promoted] processing MIR for `domain::port::event_pusher::__mock_MockEventPusher_EventPusher::__push::<impl at shared/src/domain/port/event_pusher.rs:14:1: 14:21>::with`
#3 [mir_borrowck] borrow-checking `domain::port::event_pusher::__mock_MockEventPusher_EventPusher::__push::<impl at shared/src/domain/port/event_pusher.rs:14:1: 14:21>::with`
#4 [analysis] running analysis passes on this crate
end of query stack
error: internal compiler error: re-entrant incremental verify failure, suppressing message

error: could not compile `shared` (lib) due to 2 previous errors

@hrxi
Copy link
Contributor

hrxi commented Sep 14, 2023

I'm hitting this with rustc 1.70.0 on Linux using cargo check.

error: internal compiler error: encountered incremental compilation error with mir_built(2b0ee002860f4e6d-86dbf79d6866cd33)
  |
  = help: This is a known issue with the compiler. Run `cargo clean -p nimiq_lib` 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_built(2b0ee002860f4e6d-86dbf79d6866cd33): Steal { value: RwLock(RefCell { value: Some(Body { basic_blocks: BasicBlocks { basic_blocks: [BasicBlockData { statements: [StorageLive(_3), StorageLive(_4), _4 = move _1, FakeRead(ForLet(None), _4), StorageLive(_5), StorageLive(_6), StorageLive(_7), StorageLive(_8), _8 = move _2], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[1] }, kind: _7 = <VALUE as Into<config::config::Credentials>>::into(move _8) -> [return: bb1, unwind: bb10] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_8), _6 = std::option::Option::<config::config::Credentials>::Some(move _7)], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_7) -> [return: bb2, unwind: bb9] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_7), _5 = std::option::Option::<std::option::Option<config::config::Credentials>>::Some(move _6)], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_6) -> [return: bb3, unwind: bb8] }), is_cleanup: false }, BasicBlockData { statements: [StorageDead(_6)], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#3465), scope: scope[1] }, kind: drop(((*_4).5: std::option::Option<std::option::Option<config::config::Credentials>>)) -> [return: bb4, unwind: bb5] }), is_cleanup: false }, BasicBlockData { statements: [((*_4).5: std::option::Option<std::option::Option<config::config::Credentials>>) = move _5], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_5) -> [return: bb6, unwind: bb11] }), is_cleanup: false }, BasicBlockData { statements: [((*_4).5: std::option::Option<std::option::Option<config::config::Credentials>>) = move _5], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#3465), scope: scope[1] }, kind: goto -> bb8 }), is_cleanup: true }, BasicBlockData { statements: [StorageDead(_5), _3 = &mut (*_4), StorageDead(_4), _0 = &mut (*_3), StorageDead(_3)], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[0] }, kind: drop(_2) -> [return: bb7, unwind: bb12] }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:24: 523:24 (#750), scope: scope[0] }, kind: return }), is_cleanup: false }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_5) -> [return: bb11, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_6) -> [return: bb11, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[1] }, kind: drop(_8) -> [return: bb11, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:23: 523:24 (#750), scope: scope[0] }, kind: drop(_2) -> [return: bb12, unwind terminate] }), is_cleanup: true }, BasicBlockData { statements: [], terminator: Some(Terminator { source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] }, kind: resume }), is_cleanup: true }], cache: Cache { predecessors: OnceCell(Uninit), switch_sources: OnceCell(Uninit), is_cyclic: OnceCell(Uninit), postorder: OnceCell(Uninit) } }, phase: Built, pass_count: 0, source: MirSource { instance: Item(WithOptConstParam { did: DefId(0:1033 ~ nimiq_lib[f8a8]::config::config::{impl#91}::credentials), const_param_did: None }), promoted: None }, source_scopes: [SourceScopeData { span: lib/src/config/config.rs:523:17: 523:24 (#750), parent_scope: None, inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId(DefId(0:1033 ~ nimiq_lib[f8a8]::config::config::{impl#91}::credentials).0), safety: Safe }) }, SourceScopeData { span: lib/src/config/config.rs:523:17: 523:24 (#750), parent_scope: Some(scope[0]), inlined: None, inlined_parent_scope: None, local_data: Set(SourceScopeLocalData { lint_root: HirId(DefId(0:1033 ~ nimiq_lib[f8a8]::config::config::{impl#91}::credentials).0), safety: Safe }) }], generator: None, local_decls: [LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: &mut config::config::RpcServerConfigBuilder, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(ImplicitSelf(MutRef))), internal: false, ty: &mut config::config::RpcServerConfigBuilder, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Not, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Not), opt_ty_info: None, opt_match_place: Some((None, lib/src/config/config.rs:523:17: 523:24 (#750))), pat_span: lib/src/config/config.rs:523:17: 523:24 (#750) }))), internal: false, ty: VALUE, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: &mut config::config::RpcServerConfigBuilder, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(User(Var(VarBindingForm { binding_mode: BindByValue(Mut), opt_ty_info: None, opt_match_place: Some((None, lib/src/config/config.rs:523:17: 523:24 (#750))), pat_span: lib/src/config/config.rs:523:17: 523:24 (#750) }))), internal: false, ty: &mut config::config::RpcServerConfigBuilder, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: std::option::Option<std::option::Option<config::config::Credentials>>, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(AggregateTemp), internal: false, ty: std::option::Option<config::config::Credentials>, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(AggregateTemp), internal: false, ty: config::config::Credentials, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }, LocalDecl { mutability: Mut, local_info: Set(Boring), internal: false, ty: VALUE, user_ty: None, source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] } }], user_type_annotations: [], arg_count: 2, spread_arg: None, var_debug_info: [VarDebugInfo { name: "self", source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] }, value: _1, argument_index: Some(1) }, VarDebugInfo { name: "value", source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[0] }, value: _2, argument_index: Some(2) }, VarDebugInfo { name: "new", source_info: SourceInfo { span: lib/src/config/config.rs:523:17: 523:24 (#750), scope: scope[1] }, value: _4, argument_index: None }], span: lib/src/config/config.rs:523:17: 523:24 (#750), required_consts: [], is_polymorphic: true, injection_phase: None, tainted_by_errors: None }) }) }', /rustc/90c541806f23a127002de5b4038be731ba1458ca/compiler/rustc_query_system/src/query/plumbing.rs:715:9
stack backtrace:
   0:     0x7faecbe53cca - std::backtrace_rs::backtrace::libunwind::trace::h9a6b80bbf328ba5d
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7faecbe53cca - std::backtrace_rs::backtrace::trace_unsynchronized::hd162ec543a11886b
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7faecbe53cca - std::sys_common::backtrace::_print_fmt::h78a5099be12f51a6
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7faecbe53cca - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::ha1c5390454d74f71
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7faecbeb80cf - core::fmt::write::h9ffde816c577717b
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/fmt/mod.rs:1254:17
   5:     0x7faecbe46805 - std::io::Write::write_fmt::h88186074961638e4
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/io/mod.rs:1698:15
   6:     0x7faecbe53a95 - std::sys_common::backtrace::_print::h184198273ed08d59
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:47:5
   7:     0x7faecbe53a95 - std::sys_common::backtrace::print::h1b4d8e7add699453
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:34:9
   8:     0x7faecbe5673e - std::panicking::default_hook::{{closure}}::h393bcea75423915a
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:269:22
   9:     0x7faecbe564e5 - std::panicking::default_hook::h48c64f31d8b3fd03
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:288:9
  10:     0x7faecf112995 - <rustc_driver_impl[fe6df70259db788d]::DEFAULT_HOOK::{closure#0}::{closure#0} as core[da82827a87f140f9]::ops::function::FnOnce<(&core[da82827a87f140f9]::panic::panic_info::PanicInfo,)>>::call_once::{shim:vtable#0}
  11:     0x7faecbe56f34 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hb9b860f5a1175bda
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1987:9
  12:     0x7faecbe56f34 - std::panicking::rust_panic_with_hook::hafdc493a79370062
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:695:13
  13:     0x7faecbe56ca9 - std::panicking::begin_panic_handler::{{closure}}::h0a64bc82e36bedc7
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:582:13
  14:     0x7faecbe54136 - std::sys_common::backtrace::__rust_end_short_backtrace::hc203444fb7416a16
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys_common/backtrace.rs:150:18
  15:     0x7faecbe56a02 - rust_begin_unwind
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/panicking.rs:578:5
  16:     0x7faecbeb4443 - core::panicking::panic_fmt::h0f6ef0178afce4f2
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/core/src/panicking.rs:67:14
  17:     0x7faecf9e72de - rustc_query_system[5e34f8384464b8a5]::query::plumbing::incremental_verify_ich_failed::<rustc_middle[a487dff4633a86d0]::ty::context::TyCtxt>
  18:     0x7faece1c8527 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::execute_job_incr<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_built, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>
  19:     0x7faece1c74cb - rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_execute_query::<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_built, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>
  20:     0x7faeceb11f55 - <rustc_query_impl[3e42b93bfeb445bd]::Queries as rustc_middle[a487dff4633a86d0]::ty::query::QueryEngine>::mir_built
  21:     0x7faecdd856c7 - rustc_mir_transform[9506650463ce67a9]::mir_const
  22:     0x7faecfa62c61 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_const, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>>
  23:     0x7faecfa18141 - <rustc_middle[a487dff4633a86d0]::dep_graph::dep_node::DepKind as rustc_query_system[5e34f8384464b8a5]::dep_graph::DepKind>::with_deps::<rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_const, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>>
  24:     0x7faece24af30 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::execute_job_incr<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_const, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>
  25:     0x7faece24a48b - rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_execute_query::<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_const, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>
  26:     0x7faecd7f990f - rustc_mir_transform[9506650463ce67a9]::mir_promoted
  27:     0x7faecfa5a8a1 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_promoted, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 16usize]>>::{closure#0}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 16usize]>>
  28:     0x7faecfa10d6d - <rustc_middle[a487dff4633a86d0]::dep_graph::dep_node::DepKind as rustc_query_system[5e34f8384464b8a5]::dep_graph::DepKind>::with_deps::<rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_load_from_disk_and_cache_in_memory<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_promoted, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 16usize]>>
  29:     0x7faecdfa3a79 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::execute_job_incr<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_promoted, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#1}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>::{closure#0}, core[da82827a87f140f9]::option::Option<(rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>>
  30:     0x7faecdfa26ee - rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_execute_query::<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_promoted, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>
  31:     0x7faecdfa1418 - rustc_borrowck[c07eeb7c7aba6c08]::mir_borrowck
  32:     0x7faecdfa0f6e - <rustc_borrowck[c07eeb7c7aba6c08]::provide::{closure#0} as core[da82827a87f140f9]::ops::function::FnOnce<(rustc_middle[a487dff4633a86d0]::ty::context::TyCtxt, rustc_span[2f805118d893a80f]::def_id::LocalDefId)>>::call_once
  33:     0x7faecdb9b31e - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::execute_job_incr<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_borrowck, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#2}, (rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>
  34:     0x7faecdb9a27b - rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_execute_query::<rustc_query_impl[3e42b93bfeb445bd]::queries::mir_borrowck, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>
  35:     0x7faece5e4c10 - rustc_data_structures[fea82b52c2e47d17]::sync::par_for_each_in::<&[rustc_span[2f805118d893a80f]::def_id::LocalDefId], <rustc_middle[a487dff4633a86d0]::hir::map::Map>::par_body_owners<rustc_interface[7aa24cde61830128]::passes::analysis::{closure#2}::{closure#0}>::{closure#0}>
  36:     0x7faece5e484e - <rustc_session[99ba0ed9c533f203]::session::Session>::time::<(), rustc_interface[7aa24cde61830128]::passes::analysis::{closure#2}>
  37:     0x7faece5e40f9 - rustc_interface[7aa24cde61830128]::passes::analysis
  38:     0x7faece860633 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<rustc_query_system[5e34f8384464b8a5]::query::plumbing::execute_job_incr<rustc_query_impl[3e42b93bfeb445bd]::queries::analysis, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>::{closure#2}, (rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>::{closure#0}, (rustc_middle[a487dff4633a86d0]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[5e34f8384464b8a5]::dep_graph::graph::DepNodeIndex)>
  39:     0x7faece86010b - rustc_query_system[5e34f8384464b8a5]::query::plumbing::try_execute_query::<rustc_query_impl[3e42b93bfeb445bd]::queries::analysis, rustc_query_impl[3e42b93bfeb445bd]::plumbing::QueryCtxt>
  40:     0x7faece85fcd0 - <rustc_query_impl[3e42b93bfeb445bd]::Queries as rustc_middle[a487dff4633a86d0]::ty::query::QueryEngine>::analysis
  41:     0x7faece796726 - <std[b70fedfd8b77e9]::thread::local::LocalKey<core[da82827a87f140f9]::cell::Cell<*const ()>>>::with::<rustc_middle[a487dff4633a86d0]::ty::context::tls::enter_context<<rustc_middle[a487dff4633a86d0]::ty::context::GlobalCtxt>::enter<rustc_driver_impl[fe6df70259db788d]::run_compiler::{closure#1}::{closure#2}::{closure#4}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>
  42:     0x7faece3fd02e - <rustc_interface[7aa24cde61830128]::interface::Compiler>::enter::<rustc_driver_impl[fe6df70259db788d]::run_compiler::{closure#1}::{closure#2}, core[da82827a87f140f9]::result::Result<core[da82827a87f140f9]::option::Option<rustc_interface[7aa24cde61830128]::queries::Linker>, rustc_span[2f805118d893a80f]::ErrorGuaranteed>>
  43:     0x7faece3f8281 - rustc_span[2f805118d893a80f]::set_source_map::<core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>, rustc_interface[7aa24cde61830128]::interface::run_compiler<core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>, rustc_driver_impl[fe6df70259db788d]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  44:     0x7faece3f782f - std[b70fedfd8b77e9]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[7aa24cde61830128]::util::run_in_thread_pool_with_globals<rustc_interface[7aa24cde61830128]::interface::run_compiler<core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>, rustc_driver_impl[fe6df70259db788d]::run_compiler::{closure#1}>::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>
  45:     0x7faece9db661 - <<std[b70fedfd8b77e9]::thread::Builder>::spawn_unchecked_<rustc_interface[7aa24cde61830128]::util::run_in_thread_pool_with_globals<rustc_interface[7aa24cde61830128]::interface::run_compiler<core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>, rustc_driver_impl[fe6df70259db788d]::run_compiler::{closure#1}>::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[da82827a87f140f9]::result::Result<(), rustc_span[2f805118d893a80f]::ErrorGuaranteed>>::{closure#1} as core[da82827a87f140f9]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  46:     0x7faecbe613b5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::ha1f2224656a778fb
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  47:     0x7faecbe613b5 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::haa29ed9703f354b7
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/alloc/src/boxed.rs:1973:9
  48:     0x7faecbe613b5 - std::sys::unix::thread::Thread::new::thread_start::h33b6dae3e3692197
                               at /rustc/90c541806f23a127002de5b4038be731ba1458ca/library/std/src/sys/unix/thread.rs:108:17
  49:     0x7faecbb509eb - <unknown>
  50:     0x7faecbbd4dfc - <unknown>
  51:                0x0 - <unknown>

error: 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.70.0 (90c541806 2023-05-31) running on x86_64-unknown-linux-gnu

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED]

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

query stack during panic:
#0 [mir_built] building MIR for `config::config::<impl at lib/src/config/config.rs:523:17: 523:24>::credentials`
#1 [mir_const] preparing `config::config::<impl at lib/src/config/config.rs:523:17: 523:24>::credentials` for borrow checking
#2 [mir_promoted] processing MIR for `config::config::<impl at lib/src/config/config.rs:523:17: 523:24>::credentials`
#3 [mir_borrowck] borrow-checking `config::config::<impl at lib/src/config/config.rs:523:17: 523:24>::credentials`
#4 [analysis] running analysis passes on this crate
end of query stack
error: could not compile `nimiq-lib` (lib) due to previous error

@cnoam
Copy link

cnoam commented Nov 16, 2023

Another example: trying to compile the code in section 7.2.5.0.2 in zero2production (https://www.zero2prod.com/).

$ rustc --version
rustc 1.72.0 (5680fa1 2023-08-23)
$ cargo --version
cargo 1.72.0 (103a7ff2e 2023-08-15)
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.3 LTS
Release: 22.04
Codename: jammy

I kept the offending source code in cnoam/zero2production@2a117ea

HTH

@tengyifei
Copy link

Another example: #122116

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-incr-comp Area: Incremental compilation P-high High priority regression-from-stable-to-stable Performance or correctness regression from one stable version to another. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests