Closed
Description
Some type of recursive opaque + auto trait that results in infinite blowup:
[INFO] [stdout] note: no errors encountered even though delayed bugs were created
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] note: those delayed bugs will now be shown as internal compiler errors
[INFO] [stdout]
[INFO] [stdout]
[INFO] [stdout] error: internal compiler error: errors selecting obligation during MIR typeck: [Ambiguity]
[INFO] [stdout] |
[INFO] [stdout] = note: delayed at /rustc/28f13ad7c79d80decb5a3d54595a8b4105f397a3/compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs:95:18
[INFO] [stdout] 0: <rustc_errors::DiagCtxtInner>::emit_diagnostic
[INFO] [stdout] 1: <rustc_errors::DiagCtxtHandle>::emit_diagnostic
[INFO] [stdout] 2: <rustc_span::ErrorGuaranteed as rustc_errors::diagnostic::EmissionGuarantee>::emit_producing_guarantee
[INFO] [stdout] 3: <rustc_errors::DiagCtxtHandle>::delayed_bug::<alloc::string::String>
[INFO] [stdout] 4: <rustc_borrowck::type_check::TypeChecker>::fully_perform_op::<(), rustc_middle::ty::ParamEnvAnd<rustc_middle::traits::query::type_op::ProvePredicate>>
[INFO] [stdout] 5: <rustc_borrowck::type_check::TypeChecker>::normalize_and_prove_instantiated_predicates
[INFO] [stdout] 6: <rustc_borrowck::type_check::TypeChecker as rustc_middle::mir::visit::Visitor>::visit_const_operand
[INFO] [stdout] 7: <rustc_borrowck::type_check::TypeChecker as rustc_middle::mir::visit::Visitor>::visit_body
[INFO] [stdout] 8: rustc_borrowck::start_do_mir_borrowck
[INFO] [stdout] 9: <rustc_borrowck::type_check::TypeChecker>::prove_closure_bounds
[INFO] [stdout] 10: <rustc_borrowck::type_check::TypeChecker as rustc_middle::mir::visit::Visitor>::visit_rvalue
[INFO] [stdout] 11: <rustc_borrowck::type_check::TypeChecker as rustc_middle::mir::visit::Visitor>::visit_body
[INFO] [stdout] 12: rustc_borrowck::start_do_mir_borrowck
[INFO] [stdout] 13: <rustc_borrowck::root_cx::BorrowCheckRootCtxt>::borrowck_root
[INFO] [stdout] 14: rustc_borrowck::mir_borrowck
[INFO] [stdout] 15: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::mir_borrowck::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout] 16: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_data_structures::vec_cache::VecCache<rustc_span::def_id::LocalDefId, rustc_middle::query::erase::Erased<[u8; 8]>, rustc_query_system::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout] 17: rustc_query_impl::query_impl::mir_borrowck::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout] 18: rustc_hir_analysis::collect::type_of::opaque::find_opaque_ty_constraints_for_rpit
[INFO] [stdout] 19: rustc_hir_analysis::collect::type_of::type_of_opaque
[INFO] [stdout] 20: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::type_of_opaque::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout] 21: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::DefIdCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout] 22: rustc_query_impl::query_impl::type_of_opaque::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout] 23: rustc_hir_analysis::collect::type_of::type_of
[INFO] [stdout] 24: rustc_query_impl::plumbing::__rust_begin_short_backtrace::<rustc_query_impl::query_impl::type_of::dynamic_query::{closure#2}::{closure#0}, rustc_middle::query::erase::Erased<[u8; 8]>>
[INFO] [stdout] 25: rustc_query_system::query::plumbing::try_execute_query::<rustc_query_impl::DynamicConfig<rustc_query_system::query::caches::DefIdCache<rustc_middle::query::erase::Erased<[u8; 8]>>, false, false, false>, rustc_query_impl::plumbing::QueryCtxt, false>
[INFO] [stdout] 26: rustc_query_impl::query_impl::type_of::get_query_non_incr::__rust_end_short_backtrace
[INFO] [stdout] 27: rustc_hir_analysis::check::check::check_opaque
[INFO] [stdout] 28: rustc_hir_analysis::check::check::check_item_type
[INFO] [stdout] 29: rustc_hir_analysis::check::wfcheck::check_well_formed