thread 'rustc' panicked at compiler/rustc_infer/src/infer/generalize.rs:28:40: called `Result::unwrap_err()` on an `Ok` value: std::sync::Arc, std::alloc::Global> stack backtrace: 0: 0x103c2b4d8 - std::backtrace::Backtrace::create::h6a763f843dc216f5 1: 0x10d02c828 - as core[93d19b53d5db826e]::ops::function::Fn<(&dyn for<'a, 'b> core[93d19b53d5db826e]::ops::function::Fn<(&'a core[93d19b53d5db826e]::panic::panic_info::PanicInfo<'b>,), Output = ()> + core[93d19b53d5db826e]::marker::Sync + core[93d19b53d5db826e]::marker::Send, &core[93d19b53d5db826e]::panic::panic_info::PanicInfo)>>::call 2: 0x103c43a38 - std::panicking::rust_panic_with_hook::he4f1fcd294095ca5 3: 0x103c43800 - std::panicking::begin_panic_handler::{{closure}}::ha556c0669bd1aa87 4: 0x103c40fec - std::sys_common::backtrace::__rust_end_short_backtrace::h04b9b3c35181688e 5: 0x103c4359c - _rust_begin_unwind 6: 0x103c9cc08 - core::panicking::panic_fmt::h3fefc83fe5bc8bde 7: 0x103c9d048 - core::result::unwrap_failed::h99175696506aadca 8: 0x10d6d1ba4 - rustc_infer[fb6d7b84cbe57ced]::infer::generalize::generalize:: 9: 0x10d6e34e8 - ::instantiate 10: 0x10d626b54 - ::tys 11: 0x10e783220 - ::relate:: 12: 0x10e7bd8e0 - as rustc_type_ir[e6204ec9e5aaf50d]::interner::CollectAndApply>>::collect_and_apply::>, core[93d19b53d5db826e]::iter::adapters::copied::Copied>>, rustc_middle[bbd4bcebab330050]::ty::relate::relate_args_invariantly::{closure#0}>, ::mk_args_from_iter>, core[93d19b53d5db826e]::iter::adapters::copied::Copied>>, rustc_middle[bbd4bcebab330050]::ty::relate::relate_args_invariantly::{closure#0}>, core[93d19b53d5db826e]::result::Result>::{closure#0}> 13: 0x10e81f024 - ::higher_ranked_sub:: 14: 0x10e8a2c80 - ::commit_if_ok::, rustc_middle[bbd4bcebab330050]::ty::error::TypeError, ::sub>::{closure#0}> 15: 0x10e86e338 - ::match_where_clause_trait_ref 16: 0x10e8ab848 - ::probe::, ::evaluation_probe<::where_clause_may_apply::{closure#0}>::{closure#0}> 17: 0x10e86f920 - ::assemble_candidates_from_caller_bounds 18: 0x10e86f08c - ::assemble_candidates 19: 0x10e86af48 - ::in_task::<::candidate_from_obligation::{closure#0}::{closure#0}, core[93d19b53d5db826e]::result::Result, rustc_middle[bbd4bcebab330050]::traits::SelectionError>>::{closure#0} 20: 0x10e876174 - ::candidate_from_obligation 21: 0x10e87943c - ::evaluate_trait_predicate_recursively::{closure#0}::{closure#1} 22: 0x10e8787e4 - ::evaluate_trait_predicate_recursively 23: 0x10e8774e8 - ::evaluate_predicate_recursively 24: 0x10e876fac - ::evaluate_predicates_recursively::>> 25: 0x10e877a10 - ::evaluate_predicate_recursively 26: 0x10e876fac - ::evaluate_predicates_recursively::>> 27: 0x10e8ab874 - ::probe::, ::evaluation_probe<::where_clause_may_apply::{closure#0}>::{closure#0}> 28: 0x10e86f920 - ::assemble_candidates_from_caller_bounds 29: 0x10e86f08c - ::assemble_candidates 30: 0x10e86af48 - ::in_task::<::candidate_from_obligation::{closure#0}::{closure#0}, core[93d19b53d5db826e]::result::Result, rustc_middle[bbd4bcebab330050]::traits::SelectionError>>::{closure#0} 31: 0x10e876174 - ::candidate_from_obligation 32: 0x10e87943c - ::evaluate_trait_predicate_recursively::{closure#0}::{closure#1} 33: 0x10e8787e4 - ::evaluate_trait_predicate_recursively 34: 0x10e8774e8 - ::evaluate_predicate_recursively 35: 0x10e8abd90 - ::probe::, ::evaluation_probe<::evaluate_root_obligation::{closure#0}>::{closure#0}> 36: 0x10e8e2d48 - rustc_traits[ce4697066e2d466d]::evaluate_obligation::evaluate_obligation 37: 0x10e22cb08 - rustc_query_impl[11612d4e5e8bb9b6]::plumbing::__rust_begin_short_backtrace::> 38: 0x10e40c014 - >)>>::call_once 39: 0x10e16ea20 - rustc_query_system[d3408316a25468eb]::query::plumbing::try_execute_query::>, rustc_middle[bbd4bcebab330050]::query::erase::Erased<[u8; 2usize]>>, false, false, false>, rustc_query_impl[11612d4e5e8bb9b6]::plumbing::QueryCtxt, false> 40: 0x10e3464b4 - rustc_query_impl[11612d4e5e8bb9b6]::query_impl::evaluate_obligation::get_query_non_incr::__rust_end_short_backtrace 41: 0x10e8c75cc - ::evaluate_obligation 42: 0x10231bbb4 - ::get_blanket_impls 43: 0x10222e268 - rustdoc[8e8bb84a9b960d27]::clean::utils::get_auto_trait_and_blanket_impls 44: 0x10233551c - ::visit_item 45: 0x102335620 - ::visit_item 46: 0x102335620 - ::visit_item 47: 0x102335620 - ::visit_item 48: 0x10233328c - rustdoc[8e8bb84a9b960d27]::passes::collect_trait_impls::collect_trait_impls 49: 0x10233b224 - rustdoc[8e8bb84a9b960d27]::main_args::{closure#1}::{closure#0}::{closure#0} 50: 0x1022b72ec - ::enter::> 51: 0x1023beaec - rustc_interface[f65de6e25abf875a]::interface::run_compiler::, rustdoc[8e8bb84a9b960d27]::main_args::{closure#1}>::{closure#0} 52: 0x1023b9e84 - std[362851305dc41231]::sys_common::backtrace::__rust_begin_short_backtrace::, rustdoc[8e8bb84a9b960d27]::main_args::{closure#1}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>> 53: 0x1021e8830 - <::spawn_unchecked_, rustdoc[8e8bb84a9b960d27]::main_args::{closure#1}>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[93d19b53d5db826e]::result::Result<(), rustc_span[b5f51429c77c489e]::ErrorGuaranteed>>::{closure#1} as core[93d19b53d5db826e]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 54: 0x103c4bc30 - std::sys::unix::thread::Thread::new::thread_start::h1123e84c80816a72 55: 0x18d6b5034 - __pthread_joiner_wake rustc version: 1.76.0-nightly (e9013ac0e 2023-12-05) platform: aarch64-apple-darwin query stack during panic: #0 [evaluate_obligation] evaluating trait selection obligation ` as core::iter::traits::iterator::Iterator>::Item: core::marker::Send` end of query stack