Skip to content

Incremental compilation ICE "forcing query with already existing DepNode …" using ouroboros #106136

@steffahn

Description

@steffahn

Reproduces on this change

/*
[dependencies]
ouroboros = "0.15.5"
*/
use ouroboros::*;

type F<'a> = fn(&'a ());

#[self_referencing]
struct S<'a> {
    o: Box<F<'a>>,
    #[borrows(o)]
-   r: &'this u8,
+   r: &'this str,
}
fn main() {
    println!("");
}

try it out online here

   Compiling playground v0.1.0 (/home/explorer/playground)
thread 'rustc' panicked at 'forcing query with already existing `DepNode`
- query-key: Canonical { max_universe: U0, variables: [CanonicalVarInfo { kind: Region(U0) }, CanonicalVarInfo { kind: Region(U0) }, CanonicalVarInfo { kind: Region(U0) }, CanonicalVarInfo { kind: Region(U0) }, CanonicalVarInfo { kind: Region(U0) }, CanonicalVarInfo { kind: Region(U0) }], value: ParamEnvAnd { param_env: ParamEnv { caller_bounds: [Binder(TraitPredicate(<RBuilder_ as std::marker::Sized>, polarity:Positive), []), Binder(TraitPredicate(<RBuilder_ as std::ops::FnOnce<(&'this std::boxed::Box<fn(&'a ())>,)>>, polarity:Positive), [Region(BrNamed(DefId(0:36 ~ playground[0a24]::ouroboros_impl_s::{impl#1}::'this), 'this))]), Binder(ProjectionPredicate(AliasTy { substs: [RBuilder_, (&'this std::boxed::Box<fn(&'a ())>,)], def_id: DefId(2:2924 ~ core[0486]::ops::function::FnOnce::Output), _use_mk_alias_ty_instead: () }, Term::Ty(std::pin::Pin<std::boxed::Box<(dyn std::future::Future<Output = &'this str> + 'this)>>)), [Region(BrNamed(DefId(0:36 ~ playground[0a24]::ouroboros_impl_s::{impl#1}::'this), 'this))])], reveal: UserFacing, constness: NotConst }, value: Normalize { value: [async fn body@src/main.rs:9:1: 9:20] } } }
- dep-node: type_op_normalize_ty(564da9a8061554a1-b3a54dc468e93f1e)', /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/compiler/rustc_query_system/src/dep_graph/graph.rs:316:9
stack backtrace:
   0:     0x7f976138e85a - std::backtrace_rs::backtrace::libunwind::trace::h51cb40f2f8f23f31
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
   1:     0x7f976138e85a - std::backtrace_rs::backtrace::trace_unsynchronized::hebc3338ffed58a56
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
   2:     0x7f976138e85a - std::sys_common::backtrace::_print_fmt::h136f982a4680ac7f
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys_common/backtrace.rs:65:5
   3:     0x7f976138e85a - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hd1514baae6e42eb6
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys_common/backtrace.rs:44:22
   4:     0x7f97613f136e - core::fmt::write::hfbed4b54a5eebfee
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/core/src/fmt/mod.rs:1208:17
   5:     0x7f976137ebd5 - std::io::Write::write_fmt::h9f6098b6a54a9a94
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/io/mod.rs:1682:15
   6:     0x7f976138e625 - std::sys_common::backtrace::_print::h6e7a2bc7da6ecf73
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys_common/backtrace.rs:47:5
   7:     0x7f976138e625 - std::sys_common::backtrace::print::h631b25ef82a0eea1
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys_common/backtrace.rs:34:9
   8:     0x7f976139136f - std::panicking::default_hook::{{closure}}::h41299fc951b157c9
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/panicking.rs:267:22
   9:     0x7f97613910ab - std::panicking::default_hook::hd317023abfdceaed
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/panicking.rs:286:9
  10:     0x7f976465dcc1 - rustc_driver[8fc339cf4408bec4]::DEFAULT_HOOK::{closure#0}::{closure#0}
  11:     0x7f9761391bad - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h813f31c5cc72640d
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/alloc/src/boxed.rs:2032:9
  12:     0x7f9761391bad - std::panicking::rust_panic_with_hook::h2e61684db9120e8e
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/panicking.rs:692:13
  13:     0x7f9761391929 - std::panicking::begin_panic_handler::{{closure}}::h63d39cc19c97d34a
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/panicking.rs:579:13
  14:     0x7f976138ed0c - std::sys_common::backtrace::__rust_end_short_backtrace::h8da6b271e1c3c543
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys_common/backtrace.rs:137:18
  15:     0x7f9761391632 - rust_begin_unwind
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/panicking.rs:575:5
  16:     0x7f97613edd53 - core::panicking::panic_fmt::h89c37196e57a859c
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/core/src/panicking.rs:64:14
  17:     0x7f97639bc3a1 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_middle[1a40b9d11a76de60]::infer::canonical::Canonical<rustc_middle[1a40b9d11a76de60]::ty::ParamEnvAnd<rustc_middle[1a40b9d11a76de60]::traits::query::type_op::Normalize<rustc_middle[1a40b9d11a76de60]::ty::Ty>>>, core[486592e7c49a8aa]::result::Result<&rustc_middle[1a40b9d11a76de60]::infer::canonical::Canonical<rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryResponse<rustc_middle[1a40b9d11a76de60]::ty::Ty>>, rustc_middle[1a40b9d11a76de60]::traits::query::NoSolution>>
  18:     0x7f97639baa59 - rustc_query_system[259206d12eac588b]::query::plumbing::try_execute_query::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt, rustc_query_system[259206d12eac588b]::query::caches::DefaultCache<rustc_middle[1a40b9d11a76de60]::infer::canonical::Canonical<rustc_middle[1a40b9d11a76de60]::ty::ParamEnvAnd<rustc_middle[1a40b9d11a76de60]::traits::query::type_op::Normalize<rustc_middle[1a40b9d11a76de60]::ty::Ty>>>, core[486592e7c49a8aa]::result::Result<&rustc_middle[1a40b9d11a76de60]::infer::canonical::Canonical<rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryResponse<rustc_middle[1a40b9d11a76de60]::ty::Ty>>, rustc_middle[1a40b9d11a76de60]::traits::query::NoSolution>>>
  19:     0x7f97639ba1cd - rustc_query_system[259206d12eac588b]::query::plumbing::get_query::<rustc_query_impl[bc8faa08c5c89942]::queries::type_op_normalize_ty, rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  20:     0x7f97639ba113 - <rustc_query_impl[bc8faa08c5c89942]::Queries as rustc_middle[1a40b9d11a76de60]::ty::query::QueryEngine>::type_op_normalize_ty
  21:     0x7f976331abb3 - <rustc_middle[1a40b9d11a76de60]::ty::ParamEnvAnd<rustc_middle[1a40b9d11a76de60]::traits::query::type_op::Normalize<rustc_middle[1a40b9d11a76de60]::ty::Ty>> as rustc_trait_selection[e881d80e291c2cd6]::traits::query::type_op::TypeOp>::fully_perform
  22:     0x7f97632a6630 - <&mut <rustc_borrowck[c86664c7788b1f3c]::type_check::free_region_relations::UniversalRegionRelationsBuilder>::create::{closure#0} as core[486592e7c49a8aa]::ops::function::FnOnce<(rustc_middle[1a40b9d11a76de60]::ty::Ty,)>>::call_once
  23:     0x7f97632a5f32 - <alloc[1a97d1c4ba9fe4a2]::vec::Vec<&rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryRegionConstraints> as alloc[1a97d1c4ba9fe4a2]::vec::spec_from_iter::SpecFromIter<&rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryRegionConstraints, core[486592e7c49a8aa]::iter::adapters::flatten::FlatMap<core[486592e7c49a8aa]::iter::adapters::chain::Chain<core[486592e7c49a8aa]::iter::adapters::cloned::Cloned<core[486592e7c49a8aa]::slice::iter::Iter<rustc_middle[1a40b9d11a76de60]::ty::Ty>>, core[486592e7c49a8aa]::option::IntoIter<rustc_middle[1a40b9d11a76de60]::ty::Ty>>, core[486592e7c49a8aa]::iter::adapters::chain::Chain<core[486592e7c49a8aa]::iter::adapters::chain::Chain<core[486592e7c49a8aa]::option::IntoIter<&rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryRegionConstraints>, core[486592e7c49a8aa]::option::IntoIter<&rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryRegionConstraints>>, core[486592e7c49a8aa]::option::IntoIter<&rustc_middle[1a40b9d11a76de60]::infer::canonical::QueryRegionConstraints>>, <rustc_borrowck[c86664c7788b1f3c]::type_check::free_region_relations::UniversalRegionRelationsBuilder>::create::{closure#0}>>>::from_iter
  24:     0x7f97632a12a4 - rustc_borrowck[c86664c7788b1f3c]::type_check::free_region_relations::create
  25:     0x7f9763295910 - rustc_borrowck[c86664c7788b1f3c]::type_check::type_check
  26:     0x7f9763266a35 - rustc_borrowck[c86664c7788b1f3c]::nll::compute_regions
  27:     0x7f976324b3ac - rustc_borrowck[c86664c7788b1f3c]::do_mir_borrowck
  28:     0x7f9763236c69 - rustc_borrowck[c86664c7788b1f3c]::mir_borrowck
  29:     0x7f9763236145 - <rustc_borrowck[c86664c7788b1f3c]::provide::{closure#0} as core[486592e7c49a8aa]::ops::function::FnOnce<(rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_span[fd000e025c1fef5b]::def_id::LocalDefId)>>::call_once
  30:     0x7f976363c564 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, &rustc_middle[1a40b9d11a76de60]::mir::query::BorrowCheckResult>
  31:     0x7f976363b32c - rustc_query_system[259206d12eac588b]::query::plumbing::try_execute_query::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt, rustc_query_system[259206d12eac588b]::query::caches::VecCache<rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, &rustc_middle[1a40b9d11a76de60]::mir::query::BorrowCheckResult>>
  32:     0x7f976400cf8a - <rustc_query_impl[bc8faa08c5c89942]::Queries as rustc_middle[1a40b9d11a76de60]::ty::query::QueryEngine>::mir_borrowck
  33:     0x7f9763327d21 - <rustc_borrowck[c86664c7788b1f3c]::type_check::TypeChecker>::prove_closure_bounds
  34:     0x7f9763306fc5 - <rustc_borrowck[c86664c7788b1f3c]::type_check::TypeChecker>::typeck_mir
  35:     0x7f9763295c76 - rustc_borrowck[c86664c7788b1f3c]::type_check::type_check
  36:     0x7f9763266a35 - rustc_borrowck[c86664c7788b1f3c]::nll::compute_regions
  37:     0x7f976324b3ac - rustc_borrowck[c86664c7788b1f3c]::do_mir_borrowck
  38:     0x7f9763236c69 - rustc_borrowck[c86664c7788b1f3c]::mir_borrowck
  39:     0x7f9763236145 - <rustc_borrowck[c86664c7788b1f3c]::provide::{closure#0} as core[486592e7c49a8aa]::ops::function::FnOnce<(rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_span[fd000e025c1fef5b]::def_id::LocalDefId)>>::call_once
  40:     0x7f976363c564 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, &rustc_middle[1a40b9d11a76de60]::mir::query::BorrowCheckResult>
  41:     0x7f976363b32c - rustc_query_system[259206d12eac588b]::query::plumbing::try_execute_query::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt, rustc_query_system[259206d12eac588b]::query::caches::VecCache<rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, &rustc_middle[1a40b9d11a76de60]::mir::query::BorrowCheckResult>>
  42:     0x7f9764e2ce86 - rustc_query_system[259206d12eac588b]::query::plumbing::force_query::<rustc_query_impl[bc8faa08c5c89942]::queries::mir_borrowck, rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  43:     0x7f9764f9a1a1 - rustc_query_impl[bc8faa08c5c89942]::plumbing::force_from_dep_node::<rustc_query_impl[bc8faa08c5c89942]::queries::mir_borrowck>
  44:     0x7f97626fb819 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::try_mark_previous_green::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  45:     0x7f9762f1cba9 - rustc_query_system[259206d12eac588b]::query::plumbing::get_query::<rustc_query_impl[bc8faa08c5c89942]::queries::type_of, rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  46:     0x7f976373e460 - rustc_hir_analysis[1b7141b29bd2e9d]::check::check::check_mod_item_types
  47:     0x7f97631d7ff4 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, ()>
  48:     0x7f97631d618e - rustc_query_system[259206d12eac588b]::query::plumbing::try_execute_query::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt, rustc_query_system[259206d12eac588b]::query::caches::VecCache<rustc_span[fd000e025c1fef5b]::def_id::LocalDefId, ()>>
  49:     0x7f9763a4f403 - rustc_query_system[259206d12eac588b]::query::plumbing::get_query::<rustc_query_impl[bc8faa08c5c89942]::queries::check_mod_item_types, rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  50:     0x7f9763cf8a55 - <rustc_middle[1a40b9d11a76de60]::hir::map::Map>::for_each_module::<rustc_hir_analysis[1b7141b29bd2e9d]::check_crate::{closure#6}::{closure#0}>
  51:     0x7f9762bde292 - rustc_hir_analysis[1b7141b29bd2e9d]::check_crate
  52:     0x7f9762bddedb - rustc_interface[58e4822cc60d2a6c]::passes::analysis
  53:     0x7f9763e21e85 - <rustc_query_system[259206d12eac588b]::dep_graph::graph::DepGraph<rustc_middle[1a40b9d11a76de60]::dep_graph::dep_node::DepKind>>::with_task::<rustc_middle[1a40b9d11a76de60]::ty::context::TyCtxt, (), core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>
  54:     0x7f9763e21048 - rustc_query_system[259206d12eac588b]::query::plumbing::try_execute_query::<rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt, rustc_query_system[259206d12eac588b]::query::caches::DefaultCache<(), core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>>
  55:     0x7f9763e20ab0 - rustc_query_system[259206d12eac588b]::query::plumbing::get_query::<rustc_query_impl[bc8faa08c5c89942]::queries::analysis, rustc_query_impl[bc8faa08c5c89942]::plumbing::QueryCtxt>
  56:     0x7f97638ee4f3 - <rustc_interface[58e4822cc60d2a6c]::passes::QueryContext>::enter::<rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}::{closure#2}::{closure#2}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>
  57:     0x7f97638ea8a3 - <rustc_interface[58e4822cc60d2a6c]::interface::Compiler>::enter::<rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}::{closure#2}, core[486592e7c49a8aa]::result::Result<core[486592e7c49a8aa]::option::Option<rustc_interface[58e4822cc60d2a6c]::queries::Linker>, rustc_errors[5442e185e098f882]::ErrorGuaranteed>>
  58:     0x7f97638e58b8 - rustc_span[fd000e025c1fef5b]::with_source_map::<core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>, rustc_interface[58e4822cc60d2a6c]::interface::run_compiler<core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>, rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}>::{closure#0}::{closure#0}>
  59:     0x7f97638e53a5 - <scoped_tls[2f862aa259e87453]::ScopedKey<rustc_span[fd000e025c1fef5b]::SessionGlobals>>::set::<rustc_interface[58e4822cc60d2a6c]::interface::run_compiler<core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>, rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}>::{closure#0}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>
  60:     0x7f97638e4992 - std[14b7645e29e8dad4]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[58e4822cc60d2a6c]::util::run_in_thread_pool_with_globals<rustc_interface[58e4822cc60d2a6c]::interface::run_compiler<core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>, rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}>::{closure#0}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>
  61:     0x7f9763f1bc1a - <<std[14b7645e29e8dad4]::thread::Builder>::spawn_unchecked_<rustc_interface[58e4822cc60d2a6c]::util::run_in_thread_pool_with_globals<rustc_interface[58e4822cc60d2a6c]::interface::run_compiler<core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>, rustc_driver[8fc339cf4408bec4]::run_compiler::{closure#1}>::{closure#0}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[486592e7c49a8aa]::result::Result<(), rustc_errors[5442e185e098f882]::ErrorGuaranteed>>::{closure#1} as core[486592e7c49a8aa]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  62:     0x7f976139b983 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hdbff13d45d6b3b01
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/alloc/src/boxed.rs:2000:9
  63:     0x7f976139b983 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h1e5384a2b7a0037a
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/alloc/src/boxed.rs:2000:9
  64:     0x7f976139b983 - std::sys::unix::thread::Thread::new::thread_start::h4b8540c4f94d9763
                               at /rustc/0468a00ae3fd6ef1a6a0f9eaf637d7aa9e604acc/library/std/src/sys/unix/thread.rs:108:17
  65:     0x7f976125cea7 - start_thread
  66:     0x7f976117aa2f - clone
  67:                0x0 - <unknown>

error: internal compiler error: unexpected panic

note: the compiler unexpectedly panicked. this is a bug.

note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md

note: rustc 1.68.0-nightly (0468a00ae 2022-12-17) 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 [type_op_normalize_ty] normalizing `[async fn body@src/main.rs:9:1: 9:20]`
#1 [mir_borrowck] borrow-checking `ouroboros_impl_s::<impl at src/main.rs:9:1: 9:20>::build::{closure#0}`
#2 [mir_borrowck] borrow-checking `ouroboros_impl_s::<impl at src/main.rs:9:1: 9:20>::build`
#3 [type_of] computing type of `ouroboros_impl_s::<impl at src/main.rs:9:1: 9:20>::build::{opaque#0}`
#4 [check_mod_item_types] checking item types in module `ouroboros_impl_s`
#5 [analysis] running analysis passes on this crate
end of query stack
error: could not compile `playground`

Searching the error on open issues only shows this issue, but I’m not sure whether consts are involved here, too. Ouroboros does generate quite some code… someone (maybe me myself at a later date) would need to expand the macro and search for the relevant bit that causes the ICE. I.e. @rustbot label E-needs-mcve. With a reduced example, we can better judge if this could be a duplicate, and we could also more easily check whether this is a regression, and if yes, where/when.

@rustbot label A-incr-comp

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