rust/compiler
Matthias Krüger f2f4152290
Rollup merge of #140305 - compiler-errors:coerce-loop, r=lcnr
Track per-obligation recursion depth only if there is inference in the new solver

Track how many times an obligation has been processed in the fulfillment context by reusing its recursion depth, and only overflow if a singular (root) goal hits the limit.

This also fixes a (probably theoretical at this point) problem where we don't detect pseudo-hangs across `select_where_possible` calls.

fixes https://github.com/rust-lang/trait-system-refactor-initiative/issues/186

r? lcnr
2025-04-26 07:13:09 +02:00
..
rustc Revert "Use workspace lints for crates in compiler/ #138084" 2025-03-10 18:12:47 +08:00
rustc_abi Initial UnsafePinned/UnsafeUnpin impl [Part 1: Libs] 2025-04-13 01:11:04 -04:00
rustc_arena Remove #![warn(unreachable_pub)] from all compiler/ crates. 2025-03-11 13:14:21 +11:00
rustc_ast Auto merge of #140282 - matthiaskrgr:rollup-g6ze4jj, r=matthiaskrgr 2025-04-25 12:27:16 +00:00
rustc_ast_ir Use -Wunused_crate_dependencies for compiler crates. 2025-03-20 08:59:43 +11:00
rustc_ast_lowering Auto merge of #140282 - matthiaskrgr:rollup-g6ze4jj, r=matthiaskrgr 2025-04-25 12:27:16 +00:00
rustc_ast_passes Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_ast_pretty Rollup merge of #140232 - nnethercote:rm-unnecessary-clones, r=SparrowLii 2025-04-24 08:13:01 +02:00
rustc_attr_data_structures Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_attr_parsing Auto merge of #140282 - matthiaskrgr:rollup-g6ze4jj, r=matthiaskrgr 2025-04-25 12:27:16 +00:00
rustc_baked_icu_data Add unreachable_pub to RUSTC_LINT_FLAGS for compiler/ crates. 2025-03-11 13:14:21 +11:00
rustc_borrowck Rollup merge of #140257 - amandasystems:housecleaning, r=wesleywiser 2025-04-25 07:50:27 +02:00
rustc_builtin_macros Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_codegen_cranelift Suggest {to,from}_ne_bytes for transmutations between arrays and integers, etc 2025-04-24 13:14:36 +07:00
rustc_codegen_gcc Merge commit '4f83a4258d' into subtree-update_cg_gcc_2025-04-25 2025-04-25 10:44:19 -04:00
rustc_codegen_llvm Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_codegen_ssa Rollup merge of #140086 - ChrisDenton:backoff, r=petrochenkov 2025-04-26 07:13:07 +02:00
rustc_const_eval Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_data_structures Update !DynSend and !DynSync platform impls 2025-04-21 21:23:32 -07:00
rustc_driver Remove recursion_limit increases. 2025-04-02 16:25:27 +11:00
rustc_driver_impl Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_error_codes stabilize naked_functions 2025-04-20 11:18:38 +02:00
rustc_error_messages update cfgs 2025-04-09 12:29:59 +01:00
rustc_errors Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_expand Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_feature Rollup merge of #134213 - folkertdev:stabilize-naked-functions, r=tgross35,Amanieu,traviscross 2025-04-21 18:53:15 +00:00
rustc_fluent_macro Replace proc_macro::SourceFile by Span::{file, local_file}. 2025-04-11 15:07:08 +02:00
rustc_fs_util Retry if creating temp fails with access denied 2025-04-25 11:28:36 +00:00
rustc_graphviz Remove #![warn(unreachable_pub)] from all compiler/ crates. 2025-03-11 13:14:21 +11:00
rustc_hashes Revert "Use workspace lints for crates in compiler/ #138084" 2025-03-10 18:12:47 +08:00
rustc_hir Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_hir_analysis Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_hir_pretty Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_hir_typeck Auto merge of #140282 - matthiaskrgr:rollup-g6ze4jj, r=matthiaskrgr 2025-04-25 12:27:16 +00:00
rustc_incremental Replace infallible name_or_empty methods with fallible name methods. 2025-04-17 09:50:52 +10:00
rustc_index Add copy_within to IndexSlice 2025-04-15 10:44:28 -04:00
rustc_index_macros In rustc_mir_tranform, iterate over index newtypes instead of ints 2025-04-12 11:53:07 +00:00
rustc_infer Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_interface Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_lexer Replace rustc_lexer/unescape with rustc-literal-escaper crate 2025-04-04 14:44:45 +02:00
rustc_lint Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_lint_defs Suggest {to,from}_ne_bytes for transmutations between arrays and integers, etc 2025-04-24 13:14:36 +07:00
rustc_llvm Rollup merge of #140253 - SergioGasquez:feat/xtensa-asm-printer, r=cuviper 2025-04-26 07:13:08 +02:00
rustc_log Use -Wunused_crate_dependencies for compiler crates. 2025-03-20 08:59:43 +11:00
rustc_macros Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_metadata Rollup merge of #140086 - ChrisDenton:backoff, r=petrochenkov 2025-04-26 07:13:07 +02:00
rustc_middle Rollup merge of #140236 - lcnr:normalizes-to-goals, r=compiler-errors 2025-04-25 07:50:26 +02:00
rustc_mir_build Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_mir_dataflow Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_mir_transform Auto merge of #140298 - matthiaskrgr:rollup-5tc1gvb, r=matthiaskrgr 2025-04-25 18:51:15 +00:00
rustc_monomorphize Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_next_trait_solver norm nested aliases before evaluating the parent goal 2025-04-24 18:41:43 +00:00
rustc_parse Rollup merge of #140272 - Kivooeo:new-fix-four, r=est31 2025-04-26 07:13:08 +02:00
rustc_parse_format Update rustc-literal-escaper version to 0.0.2 2025-04-04 22:26:10 +02:00
rustc_passes Auto merge of #140298 - matthiaskrgr:rollup-5tc1gvb, r=matthiaskrgr 2025-04-25 18:51:15 +00:00
rustc_pattern_analysis Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_privacy Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_query_impl Auto merge of #124141 - nnethercote:rm-Nonterminal-and-TokenKind-Interpolated, r=petrochenkov 2025-04-14 03:56:55 +00:00
rustc_query_system Auto merge of #139756 - Zoxc:out-of-order-dep-graph, r=oli-obk 2025-04-25 15:38:58 +00:00
rustc_resolve Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_sanitizers Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_serialize Zero the buffer passed from write_with 2025-04-25 07:14:27 +02:00
rustc_session Auto merge of #140298 - matthiaskrgr:rollup-5tc1gvb, r=matthiaskrgr 2025-04-25 18:51:15 +00:00
rustc_smir Rollup merge of #140232 - nnethercote:rm-unnecessary-clones, r=SparrowLii 2025-04-24 08:13:01 +02:00
rustc_span Auto merge of #140298 - matthiaskrgr:rollup-5tc1gvb, r=matthiaskrgr 2025-04-25 18:51:15 +00:00
rustc_symbol_mangling Make #![feature(let_chains)] bootstrap conditional in compiler/ 2025-04-23 16:40:30 +02:00
rustc_target Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_trait_selection Track per-obligation recursion depth only if there is inference 2025-04-25 18:14:39 +00:00
rustc_traits re-use sized fast path 2025-04-09 10:42:26 +00:00
rustc_transmute transmutability: Mark edges by ranges, not values 2025-04-23 11:45:00 -07:00
rustc_ty_utils Rollup merge of #140202 - est31:let_chains_feature_compiler, r=lcnr 2025-04-25 07:50:25 +02:00
rustc_type_ir norm nested aliases before evaluating the parent goal 2025-04-24 18:41:43 +00:00
rustc_type_ir_macros Split TypeFolder and FallibleTypeFolder 2025-04-15 18:30:35 +00:00
stable_mir let rustc_smir host stable_mir for refactoring 2025-04-05 18:23:07 +08:00