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

rustdoc on nightly freezes when generating docs for typenum #112515

Closed
Hpmason opened this issue Jun 11, 2023 · 8 comments · Fixed by #112543
Closed

rustdoc on nightly freezes when generating docs for typenum #112515

Hpmason opened this issue Jun 11, 2023 · 8 comments · Fixed by #112543
Labels
C-bug Category: This is a bug. I-hang Issue: The compiler never terminates, due to infinite loops, deadlock, livelock, etc. S-has-mcve Status: A Minimal Complete and Verifiable Example has been found for this issue T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.

Comments

@Hpmason
Copy link

Hpmason commented Jun 11, 2023

When generating docs for the typenum crate on the latest nightly, rustdoc gets stuck on the "Building" phase.

cargo +nightly doc
   Compiling typenum v1.16.0 (C:\Users\hpmas\Documents\Projects\contributing\typenum)
 Documenting typenum v1.16.0 (C:\Users\hpmas\Documents\Projects\contributing\typenum)
    Building [==================>          ] 2/3: typenum(doc)

Works as normal on on nightly-2023-06-09, but freezes on the latest nightly (2023-06-10).

Reproducible Steps

Using the latest nightly:

  1. clone typenum repo git clone https://github.com/paholg/typenum
  2. cd typenum
  3. cargo +nightly doc
@Hpmason Hpmason added the C-bug Category: This is a bug. label Jun 11, 2023
@fmease
Copy link
Member

fmease commented Jun 11, 2023

Regressed in #112429 CC @GuillaumeGomez.

@rustbot label T-rustdoc I-hang

@rustbot rustbot added I-hang Issue: The compiler never terminates, due to infinite loops, deadlock, livelock, etc. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Jun 11, 2023
@fmease
Copy link
Member

fmease commented Jun 11, 2023

Not sure if helpful but if we set intercrate to false in is_valid_impl_for, we get the following cycle error:

error[E0275]: overflow evaluating the requirement `uint::UInt<uint::UInt<uint::UInt<uint::UInt<uint::UTerm, bit::B1>, bit::B0>, ...>, ...>: core::ops::Mul<...>`
error[E0275]: overflow evaluating the requirement `uint::UInt<uint::UInt<uint::UInt<uint::UInt<uint::UTerm, bit::B1>, bit::B0>, ...>, ...>: core::ops::Mul<...>`
     |
     = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`lib`)
note: required for `uint::UInt<uint::UInt<uint::UInt<uint::UInt<uint::UInt<uint::UTerm, bit::B1>, bit::B0>, bit::B0>, bit::B1>, bit::B0>` to implement `core::ops::Mul<uint::UInt<uint::UTerm, bit::B1>>`
    --> src/uint.rs:1050:42
     |
1050 | impl<Ul: Unsigned, B: Bit, Ur: Unsigned> Mul<UInt<Ur, B>> for UInt<Ul, B0>
     |                                          ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^
1051 | where
1052 |     Ul: Mul<UInt<Ur, B>>,
     |         ---------------- unsatisfied trait bound introduced here
     = note: 122 redundant requirements hidden
     = note: required for `UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<..., ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>` to implement `core::ops::Mul<uint::UInt<uint::UTerm, bit::B1>>`
     = note: the full type name has been written to 'lib.long-type-13916523868636925158.txt'
note: required for `UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<..., ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>` to implement `private::PrivatePow<uint::UInt<uint::UTerm, bit::B1>, uint::UInt<uint::UTerm, bit::B1>>`
    --> src/uint.rs:1319:32
     |
1319 | impl<Y: Unsigned, X: Unsigned> PrivatePow<Y, U1> for X
     |                                ^^^^^^^^^^^^^^^^^     ^
1320 | where
1321 |     X: Mul<Y>,
     |        ------ unsatisfied trait bound introduced here
     = note: the full type name has been written to 'lib.long-type-13916523868636925158.txt'
     = note: 1 redundant requirement hidden
     = note: required for `UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<..., ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>, ...>` to implement `private::PrivatePow<uint::UInt<uint::UTerm, bit::B1>, uint::UInt<uint::UInt<uint::UTerm, bit::B1>, bit::B0>>`
     = note: the full type name has been written to 'lib.long-type-17764580921298495580.txt'

error: aborting due to previous error

@fmease
Copy link
Member

fmease commented Jun 11, 2023

Note that the hang happens in ocx.select_where_possible() in is_valid_impl_for after a couple impls have been successfully processed.

@GuillaumeGomez
Copy link
Member

Oh no. :o

Any idea @lcnr?

@str4d
Copy link
Contributor

str4d commented Jun 11, 2023

I hit an ICE in documenting typenum as a dependency of another crate, on rustc 1.72.0-nightly (43062c43d 2023-06-09), in a CI step that ran for over an hour (https://github.com/flipperzero-rs/flipperzero/actions/runs/5229810706/jobs/9443016515?pr=81). Posting the error output here because it's likely related, but I can move it to a new issue if not.

The ICE in my error log occurs inside the definition of DepNodeIndex, due to reaching its maximum value:

rustc_index::newtype_index! {
pub struct DepNodeIndex {}
}

// shave off 256 indices at the end to allow space for packing these indices into enums
let max = max.unwrap_or_else(|| Lit::Int(LitInt::new("0xFFFF_FF00", Span::call_site())));

Error output

$ cargo doc --workspace --document-private-items
2023-06-10T12:04:30.8690913Z   Compiling proc-macro2 v1.0.60
2023-06-10T12:04:30.8693580Z   Compiling quote v1.0.28
2023-06-10T12:04:31.2388014Z   Compiling syn v1.0.109
2023-06-10T12:04:31.2662418Z   Compiling unicode-ident v1.0.9
2023-06-10T12:04:31.9818736Z   Compiling typenum v1.16.0
2023-06-10T12:04:32.9039520Z   Compiling version_check v0.9.4
2023-06-10T12:04:33.3119536Z   Compiling generic-array v0.14.7
2023-06-10T12:04:33.5086556Z Documenting unicode-ident v1.0.9
2023-06-10T12:04:33.7354479Z Documenting proc-macro2 v1.0.60
2023-06-10T12:04:35.8924862Z    Checking ufmt-write v0.1.0
2023-06-10T12:04:35.9238776Z Documenting quote v1.0.28
2023-06-10T12:04:36.4048423Z Documenting syn v1.0.109
2023-06-10T12:04:37.9164956Z   Compiling ufmt-macros v0.3.0
2023-06-10T12:04:39.0236564Z    Checking ufmt v0.2.0
2023-06-10T12:04:39.2138797Z Documenting ufmt-write v0.1.0
2023-06-10T12:04:39.4270399Z    Checking flipperzero-sys v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/sys)
2023-06-10T12:04:39.8515901Z Documenting typenum v1.16.0
2023-06-10T12:04:40.4491775Z Documenting ufmt-macros v0.3.0
2023-06-10T12:04:40.8162396Z Documenting ufmt v0.2.0
2023-06-10T12:04:41.0759578Z   Compiling autocfg v1.1.0
2023-06-10T12:04:41.5482154Z   Compiling lock_api v0.4.10
2023-06-10T12:04:41.7500325Z Documenting flipperzero-sys v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/sys)
2023-06-10T12:04:43.0739618Z    Checking crypto-common v0.1.6
2023-06-10T12:04:43.1166593Z    Checking block-buffer v0.10.4
2023-06-10T12:04:43.1788549Z   Compiling flipperzero-test-macros v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/test/macros)
2023-06-10T12:04:44.3918456Z    Checking scopeguard v1.1.0
2023-06-10T12:04:44.4294781Z   Compiling flipperzero-rt v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/rt)
2023-06-10T12:04:44.6721816Z Documenting scopeguard v1.1.0
2023-06-10T12:04:44.8882833Z Documenting lock_api v0.4.10
2023-06-10T12:04:45.2910608Z Documenting flipperzero-test v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/test)
2023-06-10T12:04:45.5222891Z    Checking flipperzero-test v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/test)
2023-06-10T12:04:45.5877757Z    Checking digest v0.10.7
2023-06-10T12:04:45.6782898Z Documenting rand_core v0.6.4
2023-06-10T12:04:45.9040627Z Documenting bitflags v1.3.2
2023-06-10T12:04:46.1114700Z    Checking rand_core v0.6.4
2023-06-10T12:04:46.1893411Z    Checking bitflags v1.3.2
2023-06-10T12:04:46.2192408Z Documenting flipperzero-rt v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/rt)
2023-06-10T12:04:46.5408546Z Documenting flipperzero-alloc v0.10.0 (/home/runner/work/flipperzero/flipperzero/crates/alloc)
2023-06-10T13:15:33.2310122Z thread 'rustc' panicked at 'assertion failed: value <= 0xFFFF_FF00', /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/compiler/rustc_query_system/src/dep_graph/graph.rs:40:1
2023-06-10T13:15:33.2310643Z stack backtrace:
2023-06-10T13:15:33.2361149Z    0:     0x7f92fda7fc41 - trace
2023-06-10T13:15:33.2361544Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
2023-06-10T13:15:33.2395402Z    1:     0x7f92fda7fc41 - trace_unsynchronized<std::sys_common::backtrace::_print_fmt::{closure_env#1}>
2023-06-10T13:15:33.2395861Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2023-06-10T13:15:33.2396254Z    2:     0x7f92fda7fc41 - _print_fmt
2023-06-10T13:15:33.2396612Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys_common/backtrace.rs:65:5
2023-06-10T13:15:33.2396957Z    3:     0x7f92fda7fc41 - fmt
2023-06-10T13:15:33.2397288Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys_common/backtrace.rs:44:22
2023-06-10T13:15:33.2397684Z    4:     0x7f92fdae05ff - fmt
2023-06-10T13:15:33.2397992Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/fmt/rt.rs:138:9
2023-06-10T13:15:33.2398326Z    5:     0x7f92fdae05ff - write
2023-06-10T13:15:33.2398645Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/fmt/mod.rs:1094:21
2023-06-10T13:15:33.2399153Z    6:     0x7f92fda72ee1 - write_fmt<std::sys::unix::stdio::Stderr>
2023-06-10T13:15:33.2399509Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/io/mod.rs:1713:15
2023-06-10T13:15:33.2399840Z    7:     0x7f92fda7fa55 - _print
2023-06-10T13:15:33.2400176Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys_common/backtrace.rs:47:5
2023-06-10T13:15:33.2400536Z    8:     0x7f92fda7fa55 - print
2023-06-10T13:15:33.2401178Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys_common/backtrace.rs:34:9
2023-06-10T13:15:33.2401553Z    9:     0x7f92fda82737 - {closure#1}
2023-06-10T13:15:33.2401839Z   10:     0x7f92fda82524 - default_hook
2023-06-10T13:15:33.2402151Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/panicking.rs:288:9
2023-06-10T13:15:33.2563948Z   11:     0x7f9300cfbceb - rustc_driver_impl[d0821492cae6a3a8]::install_ice_hook::{closure#0}
2023-06-10T13:15:33.2564755Z   12:     0x7f92fda82e7d - call<(&core::panic::panic_info::PanicInfo), (dyn core::ops::function::Fn<(&core::panic::panic_info::PanicInfo), Output=()> + core::marker::Send + core::marker::Sync), alloc::alloc::Global>
2023-06-10T13:15:33.2565305Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/alloc/src/boxed.rs:1999:9
2023-06-10T13:15:33.2565705Z   13:     0x7f92fda82e7d - rust_panic_with_hook
2023-06-10T13:15:33.2566059Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/panicking.rs:709:13
2023-06-10T13:15:33.2566413Z   14:     0x7f92fda82bd1 - {closure#0}
2023-06-10T13:15:33.2566737Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/panicking.rs:595:13
2023-06-10T13:15:33.2567300Z   15:     0x7f92fda80076 - __rust_end_short_backtrace<std::panicking::begin_panic_handler::{closure_env#0}, !>
2023-06-10T13:15:33.2567729Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys_common/backtrace.rs:151:18
2023-06-10T13:15:33.2568110Z   16:     0x7f92fda82962 - begin_panic_handler
2023-06-10T13:15:33.2568444Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/panicking.rs:593:5
2023-06-10T13:15:33.2569135Z   17:     0x7f92fdadc883 - panic_fmt
2023-06-10T13:15:33.2569459Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/panicking.rs:67:14
2023-06-10T13:15:33.2569821Z   18:     0x7f92fdadc913 - panic
2023-06-10T13:15:33.2570141Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/panicking.rs:117:5
2023-06-10T13:15:33.2577314Z   19:     0x7f92ff4b325c - <rustc_query_system[b1cad9b13541f961]::dep_graph::graph::DepGraph<rustc_middle[5f3e0edc8316c59d]::dep_graph::dep_node::DepKind>>::with_anon_task::<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::in_task<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation::{closure#0}::{closure#0}, core[d3915b1385eeee84]::result::Result<core[d3915b1385eeee84]::option::Option<rustc_middle[5f3e0edc8316c59d]::traits::select::SelectionCandidate>, rustc_middle[5f3e0edc8316c59d]::traits::SelectionError>>::{closure#0}, core[d3915b1385eeee84]::result::Result<core[d3915b1385eeee84]::option::Option<rustc_middle[5f3e0edc8316c59d]::traits::select::SelectionCandidate>, rustc_middle[5f3e0edc8316c59d]::traits::SelectionError>>
2023-06-10T13:15:33.2582633Z   20:     0x7f92ff4ae3fb - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2587912Z   21:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2592553Z   22:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2593495Z   23:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2598239Z   24:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2599148Z   25:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2603688Z   26:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2604602Z   27:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2610771Z   28:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2611709Z   29:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2612468Z   30:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2613374Z   31:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2614304Z   32:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2615224Z   33:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2615979Z   34:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2622701Z   35:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2624305Z   36:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2628917Z   37:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2630625Z   38:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2635312Z   39:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2637119Z   40:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2641819Z   41:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2643294Z   42:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2649110Z   43:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2654023Z   44:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2661208Z   45:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2666136Z   46:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2673123Z   47:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2677999Z   48:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2685157Z   49:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2690069Z   50:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2697224Z   51:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2702187Z   52:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2709200Z   53:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2714051Z   54:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2721091Z   55:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2725953Z   56:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2733008Z   57:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2738174Z   58:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2779902Z   59:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2783607Z   60:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2786915Z   61:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2790020Z   62:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2793283Z   63:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2796410Z   64:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2799660Z   65:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2802760Z   66:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2806152Z   67:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2809284Z   68:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2812525Z   69:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2816056Z   70:     0x7f92ff4aedc2 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_stack
2023-06-10T13:15:33.2819862Z   71:     0x7f92ff4d92d3 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_predicates_recursively::<alloc[25a23451e3897904]::vec::into_iter::IntoIter<rustc_infer[266f3098d907b771]::traits::Obligation<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>>>
2023-06-10T13:15:33.2823960Z   72:     0x7f92ff4cbb79 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2827615Z   73:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2830838Z   74:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2834032Z   75:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2837450Z   76:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2841371Z   77:     0x7f92ff4ef028 - <&rustc_middle[5f3e0edc8316c59d]::ty::list::List<rustc_middle[5f3e0edc8316c59d]::ty::subst::GenericArg> as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFoldable<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::try_fold_with::<rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer>
2023-06-10T13:15:33.2844997Z   78:     0x7f92ff4efbe6 - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2847420Z   79:     0x7f92ff4fe3b7 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2849767Z   80:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2852284Z   81:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2854342Z   82:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2862184Z   83:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2863189Z   84:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2863806Z   85:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2864383Z   86:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2865182Z   87:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2865941Z   88:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2866577Z   89:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2867867Z   90:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2869352Z   91:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2870387Z   92:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2873419Z   93:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2874612Z   94:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2877916Z   95:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2878947Z   96:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2882571Z   97:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2884008Z   98:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2887352Z   99:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2888400Z  100:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2891911Z  101:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2893070Z  102:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2896548Z  103:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2898431Z  104:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2902189Z  105:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2903161Z  106:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2906453Z  107:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2907627Z  108:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2911088Z  109:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2912103Z  110:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2916098Z  111:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2917656Z  112:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2920982Z  113:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2921927Z  114:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2925418Z  115:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2926567Z  116:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2929911Z  117:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2931587Z  118:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2935311Z  119:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2936284Z  120:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2939942Z  121:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2941205Z  122:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2944711Z  123:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2945727Z  124:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2949732Z  125:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2951121Z  126:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2954448Z  127:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2955397Z  128:     0x7f92ff4f6ef9 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_projection_type
2023-06-10T13:15:33.2958894Z  129:     0x7f92ff4efd3c - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2960055Z  130:     0x7f92ff45a1c5 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::normalize_with_depth_to::<rustc_middle[5f3e0edc8316c59d]::ty::Predicate>
2023-06-10T13:15:33.2963370Z  131:     0x7f92ff4e1575 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::confirm_candidate
2023-06-10T13:15:33.2965186Z  132:     0x7f92ff4cbad1 - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::probe::<core[d3915b1385eeee84]::result::Result<rustc_middle[5f3e0edc8316c59d]::traits::select::EvaluationResult, rustc_middle[5f3e0edc8316c59d]::traits::select::OverflowError>, <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluation_probe<<rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::evaluate_candidate::{closure#0}::{closure#0}>::{closure#0}>
2023-06-10T13:15:33.2968884Z  133:     0x7f92ff4bdb2b - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
2023-06-10T13:15:33.2969879Z  134:     0x7f92fef4f1b7 - <rustc_trait_selection[7d4f3d07540a2356]::traits::select::SelectionContext>::select
2023-06-10T13:15:33.2973427Z  135:     0x7f92fef8661a - <rustc_infer[266f3098d907b771]::infer::InferCtxt>::commit_if_ok::<(), (), rustc_trait_selection[7d4f3d07540a2356]::traits::project::assemble_candidates_from_impls::{closure#0}>
2023-06-10T13:15:33.2974474Z  136:     0x7f92fef7ca82 - rustc_trait_selection[7d4f3d07540a2356]::traits::project::opt_normalize_projection_type
2023-06-10T13:15:33.2978119Z  137:     0x7f92ff4efb9d - <rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFolder<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_ty
2023-06-10T13:15:33.2979518Z  138:     0x7f92fef8cae7 - <rustc_middle[5f3e0edc8316c59d]::ty::Predicate as rustc_type_ir[dd14b209ae9cb3b9]::fold::TypeFoldable<rustc_middle[5f3e0edc8316c59d]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[7d4f3d07540a2356]::traits::project::AssocTypeNormalizer>
2023-06-10T13:15:33.2983293Z  139:     0x7f92fef40348 - <rustc_trait_selection[7d4f3d07540a2356]::traits::fulfill::FulfillProcessor as rustc_data_structures[857957a1e4262010]::obligation_forest::ObligationProcessor>::process_obligation
2023-06-10T13:15:33.2985072Z  140:     0x7f92fef389d1 - <rustc_data_structures[857957a1e4262010]::obligation_forest::ObligationForest<rustc_trait_selection[7d4f3d07540a2356]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[7d4f3d07540a2356]::traits::fulfill::FulfillProcessor>
2023-06-10T13:15:33.2988875Z  141:     0x7f9300174cfb - <rustc_trait_selection[7d4f3d07540a2356]::traits::engine::ObligationCtxt>::select_where_possible
2023-06-10T13:15:33.2990029Z  142:     0x563066662eb6 - rustdoc[36a281c49ddb497d]::html::render::is_valid_impl_for
2023-06-10T13:15:33.2993944Z  143:     0x563066564c1e - <core[d3915b1385eeee84]::iter::adapters::filter::Filter<alloc[25a23451e3897904]::vec::into_iter::IntoIter<&rustdoc[36a281c49ddb497d]::formats::Impl>, rustdoc[36a281c49ddb497d]::html::render::render_assoc_items_inner::{closure#5}> as core[d3915b1385eeee84]::iter::traits::iterator::Iterator>::partition::<alloc[25a23451e3897904]::vec::Vec<&rustdoc[36a281c49ddb497d]::formats::Impl>, rustdoc[36a281c49ddb497d]::html::render::render_assoc_items_inner::{closure#6}>
2023-06-10T13:15:33.2995534Z  144:     0x563066664bce - rustdoc[36a281c49ddb497d]::html::render::render_assoc_items_inner
2023-06-10T13:15:33.2998920Z  145:     0x5630665d9076 - <rustdoc[36a281c49ddb497d]::html::format::display_fn::WithFormatter<rustdoc[36a281c49ddb497d]::html::render::render_assoc_items::{closure#0}> as core[d3915b1385eeee84]::fmt::Display>::fmt
2023-06-10T13:15:33.3000084Z  146:     0x7f92fdae05ff - fmt
2023-06-10T13:15:33.3005515Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/fmt/rt.rs:138:9
2023-06-10T13:15:33.3005881Z  147:     0x7f92fdae05ff - write
2023-06-10T13:15:33.3010906Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/core/src/fmt/mod.rs:1094:21
2023-06-10T13:15:33.3011488Z  148:     0x56306682cc59 - rustdoc[36a281c49ddb497d]::html::render::print_item::print_item
2023-06-10T13:15:33.3012038Z  149:     0x5630667522c3 - <rustdoc[36a281c49ddb497d]::html::render::context::Context>::render_item
2023-06-10T13:15:33.3012863Z  150:     0x56306675c80c - <rustdoc[36a281c49ddb497d]::html::render::context::Context as rustdoc[36a281c49ddb497d]::formats::renderer::FormatRenderer>::item
2023-06-10T13:15:33.3013541Z  151:     0x563066789f2c - rustdoc[36a281c49ddb497d]::formats::renderer::run_format::<rustdoc[36a281c49ddb497d]::html::render::context::Context>
2023-06-10T13:15:33.3014160Z  152:     0x56306659424a - rustdoc[36a281c49ddb497d]::run_renderer::<rustdoc[36a281c49ddb497d]::html::render::context::Context>
2023-06-10T13:15:33.3015034Z  153:     0x563066595803 - <rustc_session[f84aa7fe032fd862]::session::Session>::time::<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustdoc[36a281c49ddb497d]::main_args::{closure#1}::{closure#0}::{closure#0}::{closure#1}>
2023-06-10T13:15:33.3016045Z  154:     0x563066678007 - <rustc_middle[5f3e0edc8316c59d]::ty::context::GlobalCtxt>::enter::<rustdoc[36a281c49ddb497d]::main_args::{closure#1}::{closure#0}::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>
2023-06-10T13:15:33.3017169Z  155:     0x563066597293 - <rustc_interface[5db37c687d653f71]::interface::Compiler>::enter::<rustdoc[36a281c49ddb497d]::main_args::{closure#1}::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>
2023-06-10T13:15:33.3018406Z  156:     0x5630667a97a2 - rustc_span[8dceba2d8f32b518]::set_source_map::<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustc_interface[5db37c687d653f71]::interface::run_compiler<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustdoc[36a281c49ddb497d]::main_args::{closure#1}>::{closure#0}::{closure#0}>
2023-06-10T13:15:33.3020022Z  157:     0x563066847bba - <scoped_tls[db132b8948264e24]::ScopedKey<rustc_span[8dceba2d8f32b518]::SessionGlobals>>::set::<rustc_interface[5db37c687d653f71]::interface::run_compiler<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustdoc[36a281c49ddb497d]::main_args::{closure#1}>::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>
2023-06-10T13:15:33.3021822Z  158:     0x563066650e79 - std[30357d997d387a25]::sys_common::backtrace::__rust_begin_short_backtrace::<rustc_interface[5db37c687d653f71]::util::run_in_thread_pool_with_globals<rustc_interface[5db37c687d653f71]::interface::run_compiler<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustdoc[36a281c49ddb497d]::main_args::{closure#1}>::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>
2023-06-10T13:15:33.3029053Z  159:     0x56306677ff11 - <<std[30357d997d387a25]::thread::Builder>::spawn_unchecked_<rustc_interface[5db37c687d653f71]::util::run_in_thread_pool_with_globals<rustc_interface[5db37c687d653f71]::interface::run_compiler<core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>, rustdoc[36a281c49ddb497d]::main_args::{closure#1}>::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[d3915b1385eeee84]::result::Result<(), rustc_span[8dceba2d8f32b518]::ErrorGuaranteed>>::{closure#1} as core[d3915b1385eeee84]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
2023-06-10T13:15:33.3030149Z  160:     0x7f92fda8d3a5 - call_once<(), dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global>
2023-06-10T13:15:33.3030563Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/alloc/src/boxed.rs:1985:9
2023-06-10T13:15:33.3031192Z  161:     0x7f92fda8d3a5 - call_once<(), alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output=()>, alloc::alloc::Global>, alloc::alloc::Global>
2023-06-10T13:15:33.3031785Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/alloc/src/boxed.rs:1985:9
2023-06-10T13:15:33.3032136Z  162:     0x7f92fda8d3a5 - thread_start
2023-06-10T13:15:33.3032472Z                                at /rustc/43062c43d2a63cf4e261c6eddc417575c4f3062f/library/std/src/sys/unix/thread.rs:108:17
2023-06-10T13:15:33.3032838Z  163:     0x7f92fd6d1b43 - <unknown>
2023-06-10T13:15:33.3033120Z  164:     0x7f92fd763a00 - <unknown>
2023-06-10T13:15:33.3033376Z  165:                0x0 - <unknown>
2023-06-10T13:15:33.3033513Z 
2023-06-10T13:15:33.3033662Z error: the compiler unexpectedly panicked. this is a bug.
2023-06-10T13:15:33.3033847Z 
2023-06-10T13:15:33.3038540Z note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-rustdoc&template=ice.md
2023-06-10T13:15:33.3038833Z 
2023-06-10T13:15:33.3039106Z note: rustc 1.72.0-nightly (43062c43d 2023-06-09) running on x86_64-unknown-linux-gnu
2023-06-10T13:15:33.3039315Z 
2023-06-10T13:15:33.3039466Z note: compiler flags: --crate-type lib
2023-06-10T13:15:33.3039624Z 
2023-06-10T13:15:33.3039775Z note: some of the compiler flags provided by cargo are hidden
2023-06-10T13:15:33.3039959Z 
2023-06-10T13:15:33.3040057Z query stack during panic:
2023-06-10T13:15:33.3040261Z end of query stack
2023-06-10T13:15:33.3215582Z error: could not document `typenum`
2023-06-10T13:15:33.3215811Z 
2023-06-10T13:15:33.3215891Z Caused by:
2023-06-10T13:15:33.3220909Z   process didn't exit successfully: `/home/runner/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustdoc --edition=2018 --crate-type lib --crate-name typenum /home/runner/.cargo/registry/src/index.crates.io-6f17d22bba15001f/typenum-1.16.0/src/lib.rs --cap-lints allow --target thumbv7em-none-eabihf -o /home/runner/work/flipperzero/flipperzero/crates/target/thumbv7em-none-eabihf/doc --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat -C metadata=6eb68f8109a930a2 -L dependency=/home/runner/work/flipperzero/flipperzero/crates/target/thumbv7em-none-eabihf/debug/deps -L dependency=/home/runner/work/flipperzero/flipperzero/crates/target/debug/deps --cfg docsrs --crate-version 1.16.0` (exit status: 101)

@fmease
Copy link
Member

fmease commented Jun 11, 2023

Minimized from typenum (:sweat_smile:):

// #![no_std] // with or without

pub type Boom = S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<S<u64, u8>, ()>, ()>, ()>, u8>, ()>, u8>, ()>, u8>, u8>, ()>, ()>, ()>, u8>, u8>, u8>, ()>, ()>, u8>, ()>, ()>, ()>, u8>, u8>, ()>, ()>, ()>, ()>, ()>, u8>, ()>, ()>, u8>, ()>, ()>, ()>, u8>, ()>, ()>, u8>, u8>, u8>, u8>, ()>, u8>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>, ()>;
pub struct S<T, U>(T, U);

pub trait A {}

pub trait B<T> {
    type P;
}

impl A for u64 {}

impl<T, U> A for S<T, U> {}

impl<T> B<u8> for S<T, ()>
where
    T: B<u8>,
    <T as B<u8>>::P: A,
{
    type P = ();
}

impl<T: A, U, V> B<T> for S<U, V> {
    type P = ();
}

@rustbot label S-has-mcve

@rustbot rustbot added the S-has-mcve Status: A Minimal Complete and Verifiable Example has been found for this issue label Jun 11, 2023
@lcnr
Copy link
Contributor

lcnr commented Jun 12, 2023

I guess it's easiest to revert for now and then figure out why this hangs and how to avoid it :/

@GuillaumeGomez
Copy link
Member

😢 Let's do that then...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. I-hang Issue: The compiler never terminates, due to infinite loops, deadlock, livelock, etc. S-has-mcve Status: A Minimal Complete and Verifiable Example has been found for this issue T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants