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

ICE: called Option::unwrap() on a None value #127267

Open
quantinuum-richard-morrison opened this issue Jul 3, 2024 · 1 comment
Open

ICE: called Option::unwrap() on a None value #127267

quantinuum-richard-morrison opened this issue Jul 3, 2024 · 1 comment
Labels
A-incr-comp Area: Incremental compilation C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Comments

@quantinuum-richard-morrison
Copy link

quantinuum-richard-morrison commented Jul 3, 2024

I hit a panic while compiling and the output asked me to create a bug report. I'm compiling company-owned source code so can't provide that, but I'm ok to provide all the output that happened on the command line. I hope that's enough to make rust better somehow.

Description of steps

  • I made a change in our source code by running diesel migration run.
  • Then I wanted to recompile the project so I issued cargo build and saw the issue described below under "Error output"
  • It's easy to reproduce by repeating cargo build
  • Next I ran cargo clean (Removed 89831 files, 85.1GiB total)
  • After that, RUST_BACKTRACE=1 cargo build succeeded

So this was a transitory thing, and isn't a problem for me, but I thought I'd report in the interests of gathering data.

Code

(can't provide, sorry)

Meta

rustc --version --verbose:

rustc 1.76.0 (07dca489a 2024-02-04) (built from a source tarball)
binary: rustc
commit-hash: 07dca489ac2d933c78d3c5158e3f43beefeb02ce
commit-date: 2024-02-04
host: aarch64-apple-darwin
release: 1.76.0
LLVM version: 17.0.6

Error output

>$ cargo build
   Compiling spore-db-impl v0.1.0 (/Users/richard.morrison/src/mushroom/services/spore/spore-db-impl)
thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:22:85:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0:        0x1051d2fd4 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h61949099c17bb561
   1:        0x10521e2a0 - core::fmt::write::he0c0819610fe7c82
   2:        0x1051ad2dc - std::io::Write::write_fmt::h14dadda6958822c3
   3:        0x1051d2e28 - std::sys_common::backtrace::print::h10166cbeffac9d38
   4:        0x1051d422c - std::panicking::default_hook::{{closure}}::hfec7fca779e11f3b
   5:        0x1051d3fac - std::panicking::default_hook::h26402d2c6670ffd0
   6:        0x108fdbcdc - std[d0251ff5e400585e]::panicking::update_hook::<alloc[6ce8990e7c5dc05d]::boxed::Box<rustc_driver_impl[8e5d690fd0be477f]::install_ice_hook::{closure#0}>>::{closure#0}
   7:        0x1051d494c - std::panicking::rust_panic_with_hook::hb00dd38969b5a277
   8:        0x1051d462c - std::panicking::begin_panic_handler::{{closure}}::hc86edf66ba485638
   9:        0x1051d3208 - std::sys_common::backtrace::__rust_end_short_backtrace::h24f57ebe971b5eac
  10:        0x1051d43e0 - _rust_begin_unwind
  11:        0x10522f3a8 - core::panicking::panic_fmt::h21b3a72f47844886
  12:        0x10522f430 - core::panicking::panic::h3d30c5c3383a127c
  13:        0x10a87bf14 - <rustc_metadata[d3c152f6fd3e93a5]::creader::CStore as rustc_session[4d4998990e438cd6]::cstore::CrateStore>::def_path_hash_to_def_id
  14:        0x10adc2278 - <rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt>::def_path_hash_to_def_id
  15:        0x10ad97d5c - <rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode as rustc_middle[e36d7eaa836056c9]::dep_graph::dep_node::DepNodeExt>::extract_def_id
  16:        0x10a1c9e5c - <rustc_query_impl[8a469421e04f2617]::plumbing::query_callback<rustc_query_impl[8a469421e04f2617]::query_impl::adt_def::QueryType>::{closure#0} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode)>>::call_once
  17:        0x10a174bcc - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  18:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  19:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  20:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  21:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  22:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  23:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  24:        0x10a1749a4 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  25:        0x10a053cd8 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::DefaultCache<rustc_type_ir[13e7c5d4fa472869]::canonical::Canonical<rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_middle[e36d7eaa836056c9]::ty::ParamEnvAnd<rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate>>, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  26:        0x10a1ed9a0 - rustc_query_impl[8a469421e04f2617]::query_impl::type_op_prove_predicate::get_query_incr::__rust_end_short_backtrace
  27:        0x10a435044 - <rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate as rustc_trait_selection[eae0a4c30f238c39]::traits::query::type_op::QueryTypeOp>::perform_query
  28:        0x109f2b284 - <rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate as rustc_trait_selection[eae0a4c30f238c39]::traits::query::type_op::QueryTypeOp>::fully_perform_into
  29:        0x109ddd9d8 - <rustc_borrowck[13e5d259f227f202]::type_check::TypeChecker>::fully_perform_op::<(), rustc_middle[e36d7eaa836056c9]::ty::ParamEnvAnd<rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate>>
  30:        0x109ddeb94 - <rustc_borrowck[13e5d259f227f202]::type_check::TypeChecker>::normalize_and_prove_instantiated_predicates
  31:        0x109dda4ac - <rustc_borrowck[13e5d259f227f202]::type_check::TypeVerifier as rustc_middle[e36d7eaa836056c9]::mir::visit::Visitor>::visit_constant
  32:        0x109ddb7cc - <rustc_borrowck[13e5d259f227f202]::type_check::TypeVerifier as rustc_middle[e36d7eaa836056c9]::mir::visit::Visitor>::visit_body
  33:        0x109dd7bd0 - rustc_borrowck[13e5d259f227f202]::type_check::type_check
  34:        0x109e42da4 - rustc_borrowck[13e5d259f227f202]::nll::compute_regions
  35:        0x109e93158 - rustc_borrowck[13e5d259f227f202]::do_mir_borrowck
  36:        0x109e87384 - rustc_borrowck[13e5d259f227f202]::mir_borrowck
  37:        0x10a1e205c - rustc_query_impl[8a469421e04f2617]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>
  38:        0x10a209fb8 - <rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::dynamic_query::{closure#2} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_span[8e20f49d120d5a21]::def_id::LocalDefId)>>::call_once
  39:        0x10a0a3610 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::VecCache<rustc_span[8e20f49d120d5a21]::def_id::LocalDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  40:        0x10a03c270 - rustc_query_system[53819e175f7302f3]::query::plumbing::force_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::VecCache<rustc_span[8e20f49d120d5a21]::def_id::LocalDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  41:        0x10a1bcd88 - <rustc_query_impl[8a469421e04f2617]::plumbing::query_callback<rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::QueryType>::{closure#0} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode)>>::call_once
  42:        0x10a174bcc - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  43:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  44:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  45:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  46:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  47:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  48:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  49:        0x10a1749a4 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  50:        0x10a03e680 - rustc_query_system[53819e175f7302f3]::query::plumbing::ensure_must_run::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::DefaultCache<rustc_span[8e20f49d120d5a21]::def_id::LocalModDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  51:        0x10a236968 - rustc_query_impl[8a469421e04f2617]::query_impl::check_mod_impl_wf::get_query_incr::__rust_end_short_backtrace
  52:        0x1096178e0 - <rustc_middle[e36d7eaa836056c9]::hir::map::Map>::for_each_module::<rustc_hir_analysis[8e6bd1d667ca1d85]::check_crate::{closure#2}::{closure#0}::{closure#0}>
  53:        0x1095ad648 - rustc_hir_analysis[8e6bd1d667ca1d85]::check_crate
  54:        0x109193814 - rustc_interface[dd532f6f2f02f054]::passes::analysis
  55:        0x10a1e6dd8 - rustc_query_impl[8a469421e04f2617]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[8a469421e04f2617]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 1usize]>>
  56:        0x10a20eba8 - <rustc_query_impl[8a469421e04f2617]::query_impl::analysis::dynamic_query::{closure#2} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, ())>>::call_once
  57:        0x10a045758 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::SingleCache<rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  58:        0x10a2334d8 - rustc_query_impl[8a469421e04f2617]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace
  59:        0x108fe3100 - <rustc_middle[e36d7eaa836056c9]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}::{closure#0}::{closure#3}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  60:        0x108fe29ec - <rustc_interface[dd532f6f2f02f054]::interface::Compiler>::enter::<rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<core[8a3d40ff46b1d1ff]::option::Option<rustc_interface[dd532f6f2f02f054]::queries::Linker>, rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  61:        0x108faa3f8 - rustc_span[8e20f49d120d5a21]::set_source_map::<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  62:        0x108fd0a44 - <scoped_tls[800220c1626a2492]::ScopedKey<rustc_span[8e20f49d120d5a21]::SessionGlobals>>::set::<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  63:        0x108fac4f8 - rustc_span[8e20f49d120d5a21]::create_session_globals_then::<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}>
  64:        0x10900cca8 - std[d0251ff5e400585e]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[dd532f6f2f02f054]::util::run_in_thread_with_globals<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  65:        0x108fdc160 - <<std[d0251ff5e400585e]::thread::Builder>::spawn_unchecked_<rustc_interface[dd532f6f2f02f054]::util::run_in_thread_with_globals<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#1} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  66:        0x1051cd370 - std::sys::unix::thread::Thread::new::thread_start::hbfaa262dcce3c585
  67:        0x18e49af94 - __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.76.0 (07dca489a 2024-02-04) (built from a source tarball) running on aarch64-apple-darwin

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

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

query stack during panic:
#0 [type_op_prove_predicate] evaluating `type_op_prove_predicate` `ProvePredicate { predicate: Binder { value: TraitPredicate(<diesel::query_builder::update_statement::UpdateStatement<spore_db_schema::schema::terms_documents::table, diesel::query_builder::where_clause::NoWhereClause, (diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::name>, diesel::expression::bound::Bound<diesel::sql_types::Text, alloc::string::String>>, diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::data>, diesel::expression::bound::Bound<diesel::sql_types::Binary, alloc::vec::Vec<u8>>>)> as diesel::query_builder::AsQuery>, polarity:Positive), bound_vars: [] } }`
#1 [mir_borrowck] borrow-checking `storage::terms_document::<impl at spore-db-impl/src/storage/terms_document.rs:18:1: 18:77>::update_document::{closure#0}::{closure#0}::{closure#0}`
#2 [analysis] running analysis passes on this crate
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 adt_sized_constraint(thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:22:85:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0:        0x1051d2fd4 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h61949099c17bb561
   1:        0x10521e2a0 - core::fmt::write::he0c0819610fe7c82
   2:        0x1051ad2dc - std::io::Write::write_fmt::h14dadda6958822c3
   3:        0x1051d2e28 - std::sys_common::backtrace::print::h10166cbeffac9d38
   4:        0x1051d422c - std::panicking::default_hook::{{closure}}::hfec7fca779e11f3b
   5:        0x1051d3fac - std::panicking::default_hook::h26402d2c6670ffd0
   6:        0x108fdbcdc - std[d0251ff5e400585e]::panicking::update_hook::<alloc[6ce8990e7c5dc05d]::boxed::Box<rustc_driver_impl[8e5d690fd0be477f]::install_ice_hook::{closure#0}>>::{closure#0}
   7:        0x1051d494c - std::panicking::rust_panic_with_hook::hb00dd38969b5a277
   8:        0x1051d462c - std::panicking::begin_panic_handler::{{closure}}::hc86edf66ba485638
   9:        0x1051d3208 - std::sys_common::backtrace::__rust_end_short_backtrace::h24f57ebe971b5eac
  10:        0x1051d43e0 - _rust_begin_unwind
  11:        0x10522f3a8 - core::panicking::panic_fmt::h21b3a72f47844886
  12:        0x10522f430 - core::panicking::panic::h3d30c5c3383a127c
  13:        0x10a87bf14 - <rustc_metadata[d3c152f6fd3e93a5]::creader::CStore as rustc_session[4d4998990e438cd6]::cstore::CrateStore>::def_path_hash_to_def_id
  14:        0x10adc2278 - <rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt>::def_path_hash_to_def_id
  15:        0x10ad97d5c - <rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode as rustc_middle[e36d7eaa836056c9]::dep_graph::dep_node::DepNodeExt>::extract_def_id
  16:        0x109115590 - rustc_interface[dd532f6f2f02f054]::callbacks::dep_node_debug
  17:        0x10ae3e3d4 - <rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode as core[8a3d40ff46b1d1ff]::fmt::Debug>::fmt
  18:        0x10521e2a0 - core::fmt::write::he0c0819610fe7c82
  19:        0x10519eb78 - <&std::io::stdio::Stderr as std::io::Write>::write_fmt::h3588741b6a9a186e
  20:        0x10519f58c - std::io::stdio::_eprint::h582edec1e95e0820
  21:        0x10b271400 - rustc_query_system[53819e175f7302f3]::dep_graph::graph::print_markframe_trace::<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>
  22:        0x10a175278 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  23:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  24:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  25:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  26:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  27:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  28:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  29:        0x10a1749a4 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  30:        0x10a053cd8 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::DefaultCache<rustc_type_ir[13e7c5d4fa472869]::canonical::Canonical<rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_middle[e36d7eaa836056c9]::ty::ParamEnvAnd<rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate>>, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  31:        0x10a1ed9a0 - rustc_query_impl[8a469421e04f2617]::query_impl::type_op_prove_predicate::get_query_incr::__rust_end_short_backtrace
  32:        0x10a435044 - <rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate as rustc_trait_selection[eae0a4c30f238c39]::traits::query::type_op::QueryTypeOp>::perform_query
  33:        0x109f2b284 - <rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate as rustc_trait_selection[eae0a4c30f238c39]::traits::query::type_op::QueryTypeOp>::fully_perform_into
  34:        0x109ddd9d8 - <rustc_borrowck[13e5d259f227f202]::type_check::TypeChecker>::fully_perform_op::<(), rustc_middle[e36d7eaa836056c9]::ty::ParamEnvAnd<rustc_middle[e36d7eaa836056c9]::traits::query::type_op::ProvePredicate>>
  35:        0x109ddeb94 - <rustc_borrowck[13e5d259f227f202]::type_check::TypeChecker>::normalize_and_prove_instantiated_predicates
  36:        0x109dda4ac - <rustc_borrowck[13e5d259f227f202]::type_check::TypeVerifier as rustc_middle[e36d7eaa836056c9]::mir::visit::Visitor>::visit_constant
  37:        0x109ddb7cc - <rustc_borrowck[13e5d259f227f202]::type_check::TypeVerifier as rustc_middle[e36d7eaa836056c9]::mir::visit::Visitor>::visit_body
  38:        0x109dd7bd0 - rustc_borrowck[13e5d259f227f202]::type_check::type_check
  39:        0x109e42da4 - rustc_borrowck[13e5d259f227f202]::nll::compute_regions
  40:        0x109e93158 - rustc_borrowck[13e5d259f227f202]::do_mir_borrowck
  41:        0x109e87384 - rustc_borrowck[13e5d259f227f202]::mir_borrowck
  42:        0x10a1e205c - rustc_query_impl[8a469421e04f2617]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>
  43:        0x10a209fb8 - <rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::dynamic_query::{closure#2} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_span[8e20f49d120d5a21]::def_id::LocalDefId)>>::call_once
  44:        0x10a0a3610 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::VecCache<rustc_span[8e20f49d120d5a21]::def_id::LocalDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  45:        0x10a03c270 - rustc_query_system[53819e175f7302f3]::query::plumbing::force_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::VecCache<rustc_span[8e20f49d120d5a21]::def_id::LocalDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  46:        0x10a1bcd88 - <rustc_query_impl[8a469421e04f2617]::plumbing::query_callback<rustc_query_impl[8a469421e04f2617]::query_impl::mir_borrowck::QueryType>::{closure#0} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, rustc_query_system[53819e175f7302f3]::dep_graph::dep_node::DepNode)>>::call_once
  47:        0x10a174bcc - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  48:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  49:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  50:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  51:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  52:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  53:        0x10a174c14 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  54:        0x10a1749a4 - <rustc_query_system[53819e175f7302f3]::dep_graph::graph::DepGraphData<rustc_middle[e36d7eaa836056c9]::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  55:        0x10a03e680 - rustc_query_system[53819e175f7302f3]::query::plumbing::ensure_must_run::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::DefaultCache<rustc_span[8e20f49d120d5a21]::def_id::LocalModDefId, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt>
  56:        0x10a236968 - rustc_query_impl[8a469421e04f2617]::query_impl::check_mod_impl_wf::get_query_incr::__rust_end_short_backtrace
  57:        0x1096178e0 - <rustc_middle[e36d7eaa836056c9]::hir::map::Map>::for_each_module::<rustc_hir_analysis[8e6bd1d667ca1d85]::check_crate::{closure#2}::{closure#0}::{closure#0}>
  58:        0x1095ad648 - rustc_hir_analysis[8e6bd1d667ca1d85]::check_crate
  59:        0x109193814 - rustc_interface[dd532f6f2f02f054]::passes::analysis
  60:        0x10a1e6dd8 - rustc_query_impl[8a469421e04f2617]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[8a469421e04f2617]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 1usize]>>
  61:        0x10a20eba8 - <rustc_query_impl[8a469421e04f2617]::query_impl::analysis::dynamic_query::{closure#2} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<(rustc_middle[e36d7eaa836056c9]::ty::context::TyCtxt, ())>>::call_once
  62:        0x10a045758 - rustc_query_system[53819e175f7302f3]::query::plumbing::try_execute_query::<rustc_query_impl[8a469421e04f2617]::DynamicConfig<rustc_query_system[53819e175f7302f3]::query::caches::SingleCache<rustc_middle[e36d7eaa836056c9]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[8a469421e04f2617]::plumbing::QueryCtxt, true>
  63:        0x10a2334d8 - rustc_query_impl[8a469421e04f2617]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace
  64:        0x108fe3100 - <rustc_middle[e36d7eaa836056c9]::ty::context::GlobalCtxt>::enter::<rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}::{closure#0}::{closure#3}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  65:        0x108fe29ec - <rustc_interface[dd532f6f2f02f054]::interface::Compiler>::enter::<rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<core[8a3d40ff46b1d1ff]::option::Option<rustc_interface[dd532f6f2f02f054]::queries::Linker>, rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  66:        0x108faa3f8 - rustc_span[8e20f49d120d5a21]::set_source_map::<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  67:        0x108fd0a44 - <scoped_tls[800220c1626a2492]::ScopedKey<rustc_span[8e20f49d120d5a21]::SessionGlobals>>::set::<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  68:        0x108fac4f8 - rustc_span[8e20f49d120d5a21]::create_session_globals_then::<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}>
  69:        0x10900cca8 - std[d0251ff5e400585e]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[dd532f6f2f02f054]::util::run_in_thread_with_globals<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>
  70:        0x108fdc160 - <<std[d0251ff5e400585e]::thread::Builder>::spawn_unchecked_<rustc_interface[dd532f6f2f02f054]::util::run_in_thread_with_globals<rustc_interface[dd532f6f2f02f054]::interface::run_compiler<core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>, rustc_driver_impl[8e5d690fd0be477f]::run_compiler::{closure#0}>::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[8a3d40ff46b1d1ff]::result::Result<(), rustc_span[8e20f49d120d5a21]::ErrorGuaranteed>>::{closure#1} as core[8a3d40ff46b1d1ff]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  71:        0x1051cd370 - std::sys::unix::thread::Thread::new::thread_start::hbfaa262dcce3c585
  72:        0x18e49af94 - __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.76.0 (07dca489a 2024-02-04) (built from a source tarball) running on aarch64-apple-darwin

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

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

query stack during panic:
#0 [type_op_prove_predicate] evaluating `type_op_prove_predicate` `ProvePredicate { predicate: Binder { value: TraitPredicate(<diesel::query_builder::update_statement::UpdateStatement<spore_db_schema::schema::terms_documents::table, diesel::query_builder::where_clause::NoWhereClause, (diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::name>, diesel::expression::bound::Bound<diesel::sql_types::Text, alloc::string::String>>, diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::data>, diesel::expression::bound::Bound<diesel::sql_types::Binary, alloc::vec::Vec<u8>>>)> as diesel::query_builder::AsQuery>, polarity:Positive), bound_vars: [] } }`
#1 [mir_borrowck] borrow-checking `storage::terms_document::<impl at spore-db-impl/src/storage/terms_document.rs:18:1: 18:77>::update_document::{closure#0}::{closure#0}::{closure#0}`
#2 [analysis] running analysis passes on this crate
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{closure#0}::{closure#0})
#1 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{closure#0})
#2 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document)
#3 type_of_opaque(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{opaque#0})
#4 collect_return_position_impl_trait_in_trait_tys(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document)
#5 type_of(spore_db_impl[2b51]::storage::terms_document::{impl#0}::{opaque#4})
#6 check_mod_impl_wf(spore_db_impl[2b51]::storage::terms_document)
end of try_mark_green dep node stack
error: could not compile `spore-db-impl` (lib)
Backtrace

>$ RUST_BACKTRACE=1 cargo build
   Compiling spore-db-impl v0.1.0 (/Users/richard.morrison/src/mushroom/services/spore/spore-db-impl)
thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:22:85:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: _rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic
   3: <rustc_metadata::creader::CStore as rustc_session::cstore::CrateStore>::def_path_hash_to_def_id
   4: <rustc_middle::ty::context::TyCtxt>::def_path_hash_to_def_id
   5: <rustc_query_system::dep_graph::dep_node::DepNode as rustc_middle::dep_graph::dep_node::DepNodeExt>::extract_def_id
   6: <rustc_query_impl::plumbing::query_callback<rustc_query_impl::query_impl::adt_def::QueryType>::{closure#0} as core::ops::function::FnOnce<(rustc_middle::ty::context::TyCtxt, rustc_query_system::dep_graph::dep_node::DepNode)>>::call_once
   7: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
   8: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
   9: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  10: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  11: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  12: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  13: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  14: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl::plumbing::QueryCtxt>
  15: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::DefaultCache<rustc_type_ir::canonical::Canonical<rustc_middle::ty::context::TyCtxt, rustc_middle::ty::ParamEnvAnd<rustc_middle::traits::query::type_op::ProvePredicate>>, rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, true>
  16: <rustc_middle::traits::query::type_op::ProvePredicate as rustc_trait_selection::traits::query::type_op::QueryTypeOp>::perform_query
  17: <rustc_middle::traits::query::type_op::ProvePredicate as rustc_trait_selection::traits::query::type_op::QueryTypeOp>::fully_perform_into
  18: <rustc_borrowck::type_check::TypeChecker>::fully_perform_op::<(), rustc_middle::ty::ParamEnvAnd<rustc_middle::traits::query::type_op::ProvePredicate>>
  19: <rustc_borrowck::type_check::TypeChecker>::normalize_and_prove_instantiated_predicates
  20: <rustc_borrowck::type_check::TypeVerifier as rustc_middle::mir::visit::Visitor>::visit_constant
  21: <rustc_borrowck::type_check::TypeVerifier as rustc_middle::mir::visit::Visitor>::visit_body
  22: rustc_borrowck::type_check::type_check
  23: rustc_borrowck::nll::compute_regions
  24: rustc_borrowck::do_mir_borrowck
  25: rustc_borrowck::mir_borrowck
      [... omitted 13 frames ...]
  26: <rustc_middle::hir::map::Map>::for_each_module::<rustc_hir_analysis::check_crate::{closure#2}::{closure#0}::{closure#0}>
  27: rustc_hir_analysis::check_crate
  28: rustc_interface::passes::analysis
      [... omitted 2 frames ...]
  29: <rustc_middle::ty::context::GlobalCtxt>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}::{closure#3}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
  30: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
  31: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  32: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
  33: rustc_span::create_session_globals_then::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

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.76.0 (07dca489a 2024-02-04) (built from a source tarball) running on aarch64-apple-darwin

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

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

query stack during panic:
#0 [type_op_prove_predicate] evaluating `type_op_prove_predicate` `ProvePredicate { predicate: Binder { value: TraitPredicate(<diesel::query_builder::update_statement::UpdateStatement<spore_db_schema::schema::terms_documents::table, diesel::query_builder::where_clause::NoWhereClause, (diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::name>, diesel::expression::bound::Bound<diesel::sql_types::Text, alloc::string::String>>, diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::data>, diesel::expression::bound::Bound<diesel::sql_types::Binary, alloc::vec::Vec<u8>>>)> as diesel::query_builder::AsQuery>, polarity:Positive), bound_vars: [] } }`
#1 [mir_borrowck] borrow-checking `storage::terms_document::<impl at spore-db-impl/src/storage/terms_document.rs:18:1: 18:77>::update_document::{closure#0}::{closure#0}::{closure#0}`
#2 [analysis] running analysis passes on this crate
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 adt_sized_constraint(thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:22:85:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: _rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic
   3: <rustc_metadata::creader::CStore as rustc_session::cstore::CrateStore>::def_path_hash_to_def_id
   4: <rustc_middle::ty::context::TyCtxt>::def_path_hash_to_def_id
   5: <rustc_query_system::dep_graph::dep_node::DepNode as rustc_middle::dep_graph::dep_node::DepNodeExt>::extract_def_id
   6: rustc_interface::callbacks::dep_node_debug
   7: <rustc_query_system::dep_graph::dep_node::DepNode as core::fmt::Debug>::fmt
   8: core::fmt::write
   9: <&std::io::stdio::Stderr as std::io::Write>::write_fmt
  10: std::io::stdio::_eprint
  11: rustc_query_system::dep_graph::graph::print_markframe_trace::<rustc_middle::dep_graph::DepsType>
  12: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  13: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  14: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  15: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  16: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  17: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  18: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl::plumbing::QueryCtxt>
  19: <rustc_query_system::dep_graph::graph::DepGraphData<rustc_middle::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl::plumbing::QueryCtxt>
  20: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::DefaultCache<rustc_type_ir::canonical::Canonical<rustc_middle::ty::context::TyCtxt, rustc_middle::ty::ParamEnvAnd<rustc_middle::traits::query::type_op::ProvePredicate>>, rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, true>
  21: <rustc_middle::traits::query::type_op::ProvePredicate as rustc_trait_selection::traits::query::type_op::QueryTypeOp>::perform_query
  22: <rustc_middle::traits::query::type_op::ProvePredicate as rustc_trait_selection::traits::query::type_op::QueryTypeOp>::fully_perform_into
  23: <rustc_borrowck::type_check::TypeChecker>::fully_perform_op::<(), rustc_middle::ty::ParamEnvAnd<rustc_middle::traits::query::type_op::ProvePredicate>>
  24: <rustc_borrowck::type_check::TypeChecker>::normalize_and_prove_instantiated_predicates
  25: <rustc_borrowck::type_check::TypeVerifier as rustc_middle::mir::visit::Visitor>::visit_constant
  26: <rustc_borrowck::type_check::TypeVerifier as rustc_middle::mir::visit::Visitor>::visit_body
  27: rustc_borrowck::type_check::type_check
  28: rustc_borrowck::nll::compute_regions
  29: rustc_borrowck::do_mir_borrowck
  30: rustc_borrowck::mir_borrowck
      [... omitted 13 frames ...]
  31: <rustc_middle::hir::map::Map>::for_each_module::<rustc_hir_analysis::check_crate::{closure#2}::{closure#0}::{closure#0}>
  32: rustc_hir_analysis::check_crate
  33: rustc_interface::passes::analysis
      [... omitted 2 frames ...]
  34: <rustc_middle::ty::context::GlobalCtxt>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}::{closure#3}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
  35: <rustc_interface::interface::Compiler>::enter::<rustc_driver_impl::run_compiler::{closure#0}::{closure#0}, core::result::Result<core::option::Option<rustc_interface::queries::Linker>, rustc_span::ErrorGuaranteed>>
  36: rustc_span::set_source_map::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}::{closure#0}>
  37: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}, core::result::Result<(), rustc_span::ErrorGuaranteed>>
  38: rustc_span::create_session_globals_then::<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_interface::interface::run_compiler<core::result::Result<(), rustc_span::ErrorGuaranteed>, rustc_driver_impl::run_compiler::{closure#0}>::{closure#0}>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

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.76.0 (07dca489a 2024-02-04) (built from a source tarball) running on aarch64-apple-darwin

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

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

query stack during panic:
#0 [type_op_prove_predicate] evaluating `type_op_prove_predicate` `ProvePredicate { predicate: Binder { value: TraitPredicate(<diesel::query_builder::update_statement::UpdateStatement<spore_db_schema::schema::terms_documents::table, diesel::query_builder::where_clause::NoWhereClause, (diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::name>, diesel::expression::bound::Bound<diesel::sql_types::Text, alloc::string::String>>, diesel::query_builder::update_statement::changeset::Assign<diesel::query_builder::update_statement::changeset::ColumnWrapperForUpdate<spore_db_schema::schema::terms_documents::columns::data>, diesel::expression::bound::Bound<diesel::sql_types::Binary, alloc::vec::Vec<u8>>>)> as diesel::query_builder::AsQuery>, polarity:Positive), bound_vars: [] } }`
#1 [mir_borrowck] borrow-checking `storage::terms_document::<impl at spore-db-impl/src/storage/terms_document.rs:18:1: 18:77>::update_document::{closure#0}::{closure#0}::{closure#0}`
#2 [analysis] running analysis passes on this crate
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{closure#0}::{closure#0})
#1 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{closure#0})
#2 mir_borrowck(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document)
#3 type_of_opaque(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document::{opaque#0})
#4 collect_return_position_impl_trait_in_trait_tys(spore_db_impl[2b51]::storage::terms_document::{impl#0}::update_document)
#5 type_of(spore_db_impl[2b51]::storage::terms_document::{impl#0}::{opaque#4})
#6 check_mod_impl_wf(spore_db_impl[2b51]::storage::terms_document)
end of try_mark_green dep node stack
error: could not compile `spore-db-impl` (lib)

@quantinuum-richard-morrison quantinuum-richard-morrison added C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jul 3, 2024
@rustbot rustbot added the needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. label Jul 3, 2024
@pacak
Copy link
Contributor

pacak commented Jul 3, 2024

I believe this was fixed by #126409

@saethlin saethlin added A-incr-comp Area: Incremental compilation and removed needs-triage This issue may need triage. Remove it if it has been sufficiently triaged. labels Aug 12, 2024
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 C-bug Category: This is a bug. I-ICE Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️ 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

4 participants