Skip to content

rustdoc on nightly freezes when generating docs for typenum #112515

New issue

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

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

Already on GitHub? # to your account

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...

# for free to join this conversation on GitHub. Already have an account? # 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