Skip to content

ICE in uv when doing a rebuild after code change #125367

Closed
@BurntSushi

Description

@BurntSushi

Code

Unfortunately this is nowhere near a minimal example, but it was a tricky one to figure out how to reliably reproduce. Here are the steps:

$ git clone git@github.com:astral-sh/uv uv-ice
$ cd uv-ice
$ git checkout 44fe0f6749249a223646baa87f9d7ce40b2e40f3
$ cargo b -p uv
$ git checkout eac8221718aaa3444d5bfc8099f4bdb0c3ef2f97
$ cargo b -p uv

Meta

$ rustc --version
rustc 1.78.0 (9b00956e5 2024-04-29)
$ cargo --version
cargo 1.78.0 (54d8815d0 2024-03-26)

Error output

thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:23:54:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0:     0x70e9ff589892 - std::backtrace_rs::backtrace::libunwind::trace::he4ee80166a02c846
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
   1:     0x70e9ff589892 - std::backtrace_rs::backtrace::trace_unsynchronized::h476faccf57e88641
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x70e9ff589892 - std::sys_common::backtrace::_print_fmt::h430c922a77e7a59c
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:68:5
   3:     0x70e9ff589892 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hffecb437d922f988
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x70e9ff5daa6c - core::fmt::rt::Argument::fmt::hf3df69369399bfa9
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/fmt/rt.rs:142:9
   5:     0x70e9ff5daa6c - core::fmt::write::hd9a8d7d029f9ea1a
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/fmt/mod.rs:1153:17
   6:     0x70e9ff57e78f - std::io::Write::write_fmt::h0e1226b2b8d973fe
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/io/mod.rs:1843:15
   7:     0x70e9ff589664 - std::sys_common::backtrace::_print::hd2df4a083f6e69b8
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x70e9ff589664 - std::sys_common::backtrace::print::he907f6ad7eee41cb
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x70e9ff58c35b - std::panicking::default_hook::{{closure}}::h3926193b61c9ca9b
  10:     0x70e9ff58c0b3 - std::panicking::default_hook::h25ba2457dea68e65
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:292:9
  11:     0x70e9fc22845d - std[e4dfbc2c3f4b09f1]::panicking::update_hook::<alloc[1adba907b9db1888]::boxed::Box<rustc_driver_impl[24a943716c49befe]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x70e9ff58cac0 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h022ca2c0d8c21c9e
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/alloc/src/boxed.rs:2034:9
  13:     0x70e9ff58cac0 - std::panicking::rust_panic_with_hook::h0ad14d90dcf5224f
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:783:13
  14:     0x70e9ff58c7c9 - std::panicking::begin_panic_handler::{{closure}}::h4a1838a06f542647
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:649:13
  15:     0x70e9ff589d66 - std::sys_common::backtrace::__rust_end_short_backtrace::h77cc4dc3567ca904
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys_common/backtrace.rs:171:18
  16:     0x70e9ff58c534 - rust_begin_unwind
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/panicking.rs:645:5
  17:     0x70e9ff5d6f85 - core::panicking::panic_fmt::h940d4fd01a4b4fd1
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/panicking.rs:72:14
  18:     0x70e9ff5d7043 - core::panicking::panic::h8ddd58dc57c2dc00
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/panicking.rs:145:5
  19:     0x70e9ff5d6d16 - core::option::unwrap_failed::hf59153bb1e2fc334
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/core/src/option.rs:1985:5
  20:     0x70e9fd4f7b11 - <rustc_query_system[475239fef39bf53f]::dep_graph::dep_node::DepNode as rustc_middle[fda44fdb505d3e7f]::dep_graph::dep_node::DepNodeExt>::extract_def_id
  21:     0x70e9fe046e60 - rustc_query_impl[e4152ad88c3d6c78]::plumbing::force_from_dep_node::<rustc_query_impl[e4152ad88c3d6c78]::DynamicConfig<rustc_query_system[475239fef39bf53f]::query::caches::DefIdCache<rustc_middle[fda44fdb505d3e7f]::query::erase::Erased<[u8; 8usize]>>, false, false, false>>
  22:     0x70e9fe046d2d - <rustc_query_impl[e4152ad88c3d6c78]::plumbing::query_callback<rustc_query_impl[e4152ad88c3d6c78]::query_impl::type_of::QueryType>::{closure#0} as core[836963c7c1decc11]::ops::function::FnOnce<(rustc_middle[fda44fdb505d3e7f]::ty::context::TyCtxt, rustc_query_system[475239fef39bf53f]::dep_graph::dep_node::DepNode)>>::call_once
  23:     0x70e9fd429055 - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  24:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  25:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  26:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  27:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  28:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  29:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  30:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  31:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  32:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  33:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  34:     0x70e9fd428fbd - <rustc_query_system[475239fef39bf53f]::dep_graph::graph::DepGraphData<rustc_middle[fda44fdb505d3e7f]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt>
  35:     0x70e9fd598c90 - rustc_query_system[475239fef39bf53f]::query::plumbing::try_execute_query::<rustc_query_impl[e4152ad88c3d6c78]::DynamicConfig<rustc_query_system[475239fef39bf53f]::query::caches::DefaultCache<rustc_middle[fda44fdb505d3e7f]::ty::ParamEnvAnd<(rustc_middle[fda44fdb505d3e7f]::ty::instance::Instance, &rustc_middle[fda44fdb505d3e7f]::ty::list::List<rustc_middle[fda44fdb505d3e7f]::ty::Ty>)>, rustc_middle[fda44fdb505d3e7f]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[e4152ad88c3d6c78]::plumbing::QueryCtxt, true>
  36:     0x70e9fd597aea - rustc_query_impl[e4152ad88c3d6c78]::query_impl::fn_abi_of_instance::get_query_incr::__rust_end_short_backtrace
  37:     0x70e9faeed3d3 - <rustc_codegen_llvm[f0cd90d441c72ba4]::context::CodegenCx as rustc_codegen_ssa[efaff1afc8f87053]::traits::declare::PreDefineMethods>::predefine_fn
  38:     0x70e9fe072d22 - rustc_codegen_llvm[f0cd90d441c72ba4]::base::compile_codegen_unit::module_codegen
  39:     0x70e9fe06f57d - <rustc_codegen_llvm[f0cd90d441c72ba4]::LlvmCodegenBackend as rustc_codegen_ssa[efaff1afc8f87053]::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  40:     0x70e9fe2f8a57 - <rustc_codegen_llvm[f0cd90d441c72ba4]::LlvmCodegenBackend as rustc_codegen_ssa[efaff1afc8f87053]::traits::backend::CodegenBackend>::codegen_crate
  41:     0x70e9fe1b418f - rustc_interface[ba2b6dc4c96cb491]::passes::start_codegen
  42:     0x70e9fe1b39c8 - <rustc_interface[ba2b6dc4c96cb491]::queries::Queries>::codegen_and_build_linker
  43:     0x70e9fdffc86f - rustc_interface[ba2b6dc4c96cb491]::interface::run_compiler::<core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>, rustc_driver_impl[24a943716c49befe]::run_compiler::{closure#0}>::{closure#0}
  44:     0x70e9fe33eb6e - std[e4dfbc2c3f4b09f1]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[ba2b6dc4c96cb491]::util::run_in_thread_with_globals<rustc_interface[ba2b6dc4c96cb491]::interface::run_compiler<core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>, rustc_driver_impl[24a943716c49befe]::run_compiler::{closure#0}>::{closure#0}, core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>>
  45:     0x70e9fe33e9ca - <<std[e4dfbc2c3f4b09f1]::thread::Builder>::spawn_unchecked_<rustc_interface[ba2b6dc4c96cb491]::util::run_in_thread_with_globals<rustc_interface[ba2b6dc4c96cb491]::interface::run_compiler<core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>, rustc_driver_impl[24a943716c49befe]::run_compiler::{closure#0}>::{closure#0}, core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[836963c7c1decc11]::result::Result<(), rustc_span[a4517f2b2e65298c]::ErrorGuaranteed>>::{closure#1} as core[836963c7c1decc11]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  46:     0x70e9ff596145 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h19b9e642d37e7272
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/alloc/src/boxed.rs:2020:9
  47:     0x70e9ff596145 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h97265befc434d3ae
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/alloc/src/boxed.rs:2020:9
  48:     0x70e9ff596145 - std::sys::pal::unix::thread::Thread::new::thread_start::h420dad5cf01a9f35
                               at /rustc/9b00956e56009bab2aa15d7bff10916599e3d6d6/library/std/src/sys/pal/unix/thread.rs:108:17
  49:     0x70e9f92aa1cf - <unknown>
  50:     0x70e9f932b6ec - <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.78.0 (9b00956e5 2024-04-29) running on x86_64-unknown-linux-gnu

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 [fn_abi_of_instance] computing call ABI of `core::ptr::drop_in_place::<pubgrub::internal::partial_solution::PartialSolution<uv_resolver::dependency_provider::UvDependencyProvider>> - shim(Some(pubgrub::internal::partial_solution::PartialSolution<uv_resolver::dependency_provider::UvDependencyProvider>))`
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 TraitSelect(55b8bee41a82e7c2-3a3e4d970e182545)
#1 TraitSelect(fa461f6d08d7dac4-e3befb3fa9cf797c)
#2 TraitSelect(4c00df648c347e83-3928b82f8f6e1ebf)
#3 TraitSelect(87bbbd51f6c2b1e7-5dac3f95440f7b31)
#4 TraitSelect(dfca409466fe9d60-c26dddb72c38ee7c)
#5 TraitSelect(84a9bc21b8ec357c-99ce74e5b76965fa)
#6 TraitSelect(960ad83381f93f02-7a9702a22a3f1b1d)
#7 TraitSelect(a87950bb1d902f9c-16fc745dd9e5eec5)
#8 TraitSelect(46412be99ebee7ac-293a8bf0f6e155a9)
#9 evaluate_obligation(ac0d9b43f463712d-cff58f98bac66ee0)
#10 is_unpin_raw(4c7531628bad62fa-664363cdb9b0d317)
#11 fn_abi_of_instance(ce984a7457c3d0f5-31b85a4f0be94126)
end of try_mark_green dep node stack
error: could not compile `uv` (bin "uv")

This also happens with current nightly too:

$ rustc +nightly --version
rustc 1.80.0-nightly (b92758a9a 2024-05-20)
$ cargo +nightly --version
cargo 1.80.0-nightly (0de7f2ec6 2024-05-17)

And here's the error from nightly:

thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:23:54:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0:     0x75c590e8e7f5 - std::backtrace_rs::backtrace::libunwind::trace::h5b560bab72e6154b
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
   1:     0x75c590e8e7f5 - std::backtrace_rs::backtrace::trace_unsynchronized::h4ee8ec99b43d8706
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x75c590e8e7f5 - std::sys_common::backtrace::_print_fmt::h6e8289aafa4fb13e
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys_common/backtrace.rs:68:5
   3:     0x75c590e8e7f5 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hed32d0ff2aa0fdf1
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x75c590edd91b - core::fmt::rt::Argument::fmt::hca3a538408b6d3ca
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/core/src/fmt/rt.rs:165:63
   5:     0x75c590edd91b - core::fmt::write::h0c46818975380aad
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/core/src/fmt/mod.rs:1169:21
   6:     0x75c590e8357f - std::io::Write::write_fmt::h5ea3db9efd501baa
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/io/mod.rs:1835:15
   7:     0x75c590e8e5ce - std::sys_common::backtrace::_print::h27ff758d37d9e119
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys_common/backtrace.rs:47:5
   8:     0x75c590e8e5ce - std::sys_common::backtrace::print::hafc6b0d8efbd24ba
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys_common/backtrace.rs:34:9
   9:     0x75c590e90fc9 - std::panicking::default_hook::{{closure}}::ha573ac73171c717b
  10:     0x75c590e90d0d - std::panicking::default_hook::h8ed95b009f156527
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/panicking.rs:298:9
  11:     0x75c58d8e5cf0 - std[8dfc48a2846f20c1]::panicking::update_hook::<alloc[9143b4602d1c6346]::boxed::Box<rustc_driver_impl[475ad1987d1f8ff4]::install_ice_hook::{closure#0}>>::{closure#0}
  12:     0x75c590e916fb - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h462bfb4e4b1a66a0
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/alloc/src/boxed.rs:2036:9
  13:     0x75c590e916fb - std::panicking::rust_panic_with_hook::h086afbf37fa35871
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/panicking.rs:799:13
  14:     0x75c590e9143b - std::panicking::begin_panic_handler::{{closure}}::ha322428a7efae35f
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/panicking.rs:656:13
  15:     0x75c590e8ecb9 - std::sys_common::backtrace::__rust_end_short_backtrace::hfc043f4d06966d4a
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys_common/backtrace.rs:171:18
  16:     0x75c590e911a7 - rust_begin_unwind
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/panicking.rs:652:5
  17:     0x75c590ed9ee3 - core::panicking::panic_fmt::h6d75522ebd7efdf2
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/core/src/panicking.rs:72:14
  18:     0x75c590ed9f8c - core::panicking::panic::h6eb78686f8ac2d4f
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/core/src/panicking.rs:146:5
  19:     0x75c590ed9c69 - core::option::unwrap_failed::h034406070afbd7bc
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/core/src/option.rs:1984:5
  20:     0x75c58ecc4339 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::dep_node::DepNode as rustc_middle[2f8362f7e89cbd68]::dep_graph::dep_node::DepNodeExt>::extract_def_id
  21:     0x75c58f8296e0 - rustc_query_impl[8c69df15749cef02]::plumbing::force_from_dep_node::<rustc_query_impl[8c69df15749cef02]::DynamicConfig<rustc_query_system[6d97f4d71951f3fa]::query::caches::DefIdCache<rustc_middle[2f8362f7e89cbd68]::query::erase::Erased<[u8; 8usize]>>, false, false, false>>
  22:     0x75c58f8295ad - <rustc_query_impl[8c69df15749cef02]::plumbing::query_callback<rustc_query_impl[8c69df15749cef02]::query_impl::type_of::QueryType>::{closure#0} as core[fcbeababeaec86fe]::ops::function::FnOnce<(rustc_middle[2f8362f7e89cbd68]::ty::context::TyCtxt, rustc_query_system[6d97f4d71951f3fa]::dep_graph::dep_node::DepNode)>>::call_once
  23:     0x75c58ec2b222 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  24:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  25:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  26:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  27:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  28:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  29:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  30:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  31:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  32:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  33:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  34:     0x75c58ec2b199 - <rustc_query_system[6d97f4d71951f3fa]::dep_graph::graph::DepGraphData<rustc_middle[2f8362f7e89cbd68]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt>
  35:     0x75c58f0d6b74 - rustc_query_system[6d97f4d71951f3fa]::query::plumbing::try_execute_query::<rustc_query_impl[8c69df15749cef02]::DynamicConfig<rustc_query_system[6d97f4d71951f3fa]::query::caches::DefaultCache<rustc_middle[2f8362f7e89cbd68]::ty::ParamEnvAnd<(rustc_middle[2f8362f7e89cbd68]::ty::instance::Instance, &rustc_middle[2f8362f7e89cbd68]::ty::list::RawList<(), rustc_middle[2f8362f7e89cbd68]::ty::Ty>)>, rustc_middle[2f8362f7e89cbd68]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[8c69df15749cef02]::plumbing::QueryCtxt, true>
  36:     0x75c58f0d58da - rustc_query_impl[8c69df15749cef02]::query_impl::fn_abi_of_instance::get_query_incr::__rust_end_short_backtrace
  37:     0x75c58c048bb9 - <rustc_codegen_llvm[e7e620d8e1cab7f0]::context::CodegenCx as rustc_codegen_ssa[5a60f71214b3522a]::traits::declare::PreDefineMethods>::predefine_fn
  38:     0x75c58f846127 - rustc_codegen_llvm[e7e620d8e1cab7f0]::base::compile_codegen_unit::module_codegen
  39:     0x75c58f842786 - <rustc_codegen_llvm[e7e620d8e1cab7f0]::LlvmCodegenBackend as rustc_codegen_ssa[5a60f71214b3522a]::traits::backend::ExtraBackendMethods>::compile_codegen_unit
  40:     0x75c58fb51b9d - rustc_codegen_ssa[5a60f71214b3522a]::base::codegen_crate::<rustc_codegen_llvm[e7e620d8e1cab7f0]::LlvmCodegenBackend>
  41:     0x75c58f9d750c - <rustc_codegen_llvm[e7e620d8e1cab7f0]::LlvmCodegenBackend as rustc_codegen_ssa[5a60f71214b3522a]::traits::backend::CodegenBackend>::codegen_crate
  42:     0x75c58f9d6e9f - rustc_interface[a8c97089be6b2131]::passes::start_codegen
  43:     0x75c58f9d651a - <rustc_interface[a8c97089be6b2131]::queries::Queries>::codegen_and_build_linker
  44:     0x75c58f7d88ae - rustc_interface[a8c97089be6b2131]::interface::run_compiler::<core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>, rustc_driver_impl[475ad1987d1f8ff4]::run_compiler::{closure#0}>::{closure#1}
  45:     0x75c58f7c47c9 - std[8dfc48a2846f20c1]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[a8c97089be6b2131]::util::run_in_thread_with_globals<rustc_interface[a8c97089be6b2131]::util::run_in_thread_pool_with_globals<rustc_interface[a8c97089be6b2131]::interface::run_compiler<core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>, rustc_driver_impl[475ad1987d1f8ff4]::run_compiler::{closure#0}>::{closure#1}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>::{closure#0}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>
  46:     0x75c58f7c4576 - <<std[8dfc48a2846f20c1]::thread::Builder>::spawn_unchecked_<rustc_interface[a8c97089be6b2131]::util::run_in_thread_with_globals<rustc_interface[a8c97089be6b2131]::util::run_in_thread_pool_with_globals<rustc_interface[a8c97089be6b2131]::interface::run_compiler<core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>, rustc_driver_impl[475ad1987d1f8ff4]::run_compiler::{closure#0}>::{closure#1}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>::{closure#0}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[fcbeababeaec86fe]::result::Result<(), rustc_span[9025529b6308a21f]::ErrorGuaranteed>>::{closure#2} as core[fcbeababeaec86fe]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  47:     0x75c590e9b4db - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h374c54d7ba58fd8d
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/alloc/src/boxed.rs:2022:9
  48:     0x75c590e9b4db - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h55df67e9d227fa0c
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/alloc/src/boxed.rs:2022:9
  49:     0x75c590e9b4db - std::sys::pal::unix::thread::Thread::new::thread_start::hc81f9fd5796eb668
                               at /rustc/b92758a9aef1cef7b79e2b72c3d8ba113e547f89/library/std/src/sys/pal/unix/thread.rs:108:17
  50:     0x75c58a6aa1cf - <unknown>
  51:     0x75c58a72b6ec - <unknown>
  52:                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: please make sure that you have updated to the latest nightly

note: please attach the file at `/home/andrew/astral/uv-ice/rustc-ice-2024-05-21T14_45_20-3821143.txt` to your bug report

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 [fn_abi_of_instance] computing call ABI of `core::ptr::drop_in_place::<pubgrub::internal::partial_solution::PartialSolution<uv_resolver::dependency_provider::UvDependencyProvider>> - shim(Some(pubgrub::internal::partial_solution::PartialSolution<uv_resolver::dependency_provider::UvDependencyProvider>))`
end of query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 TraitSelect(b2ffe6aa4d6aa869-fcda8a0c413d1f76)
#1 TraitSelect(63263e15d71e08e3-206c3741085b77d3)
#2 TraitSelect(6a1af11da2f0e187-ff8aaf5459647263)
#3 TraitSelect(70396034be467119-c209d1ef56e52b1b)
#4 TraitSelect(3d32eb9629f97d20-d2caf3eaeedb71d7)
#5 TraitSelect(a67e54cc5c94f375-6312aa96b0e30db)
#6 TraitSelect(5d74d97952e2192c-ed1bafafe8c755d3)
#7 TraitSelect(362c3a049bbeab34-e4ac4a3efd7d86ac)
#8 TraitSelect(4f2c17975a95f7e-ebc2abbb1eb7d60e)
#9 evaluate_obligation(cc97e22fafe75b69-cd605ca39378ed2e)
#10 is_unpin_raw(4e8850f6268054bc-5f22f25f70f74138)
#11 fn_abi_of_instance(b7fc7b91e6594d2a-8133696373d5192b)
end of try_mark_green dep node stack
error: could not compile `uv` (bin "uv")

Unfortunately it's hard to say which version of Rust introduced this error since uv tracks the latest stable version of Rust.

One possible way to narrow this down is that not all changes to the code seem to provoke the ICE. For example, if you checkout 223980e4bc22ec17b4d79b8e5f3f00b38c144c1a, do cargo b -p uv and then checkout 44fe0f6749249a223646baa87f9d7ce40b2e40f3 and build that too, then it works fine. So I wonder if there is something about astral-sh/uv@eac8221 that is provoking the problem.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-incr-compArea: Incremental compilationC-bugCategory: This is a bug.E-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleI-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions