about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJana Dönszelmann <jonathan@donsz.nl>2025-07-31 17:19:38 +0200
committerGitHub <noreply@github.com>2025-07-31 17:19:38 +0200
commiteec13cd27381e3224608fcabcae3881d43fa9a38 (patch)
treed92ad1f9131fe3e4c50b94758aae5c273dbfb205
parent1fe488638b7bcdf43d69b5c075095109fce25eac (diff)
parent585eac88c8275ec336f730b7b715cc573a755b55 (diff)
downloadrust-eec13cd27381e3224608fcabcae3881d43fa9a38.tar.gz
rust-eec13cd27381e3224608fcabcae3881d43fa9a38.zip
Rollup merge of #144702 - compiler-errors:stall-const-arg-has-type, r=lcnr
stall `ConstArgHasType` in `compute_goal_fast_path`

I'm having major deja-vu about this; I thought that already implemented this but đŸ€· maybe not.
-rw-r--r--compiler/rustc_trait_selection/src/solve/delegate.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/rustc_trait_selection/src/solve/delegate.rs b/compiler/rustc_trait_selection/src/solve/delegate.rs
index 7426504e139..1fa2a690fcb 100644
--- a/compiler/rustc_trait_selection/src/solve/delegate.rs
+++ b/compiler/rustc_trait_selection/src/solve/delegate.rs
@@ -135,6 +135,13 @@ impl<'tcx> rustc_next_trait_solver::delegate::SolverDelegate for SolverDelegate<
                     None
                 }
             }
+            ty::PredicateKind::Clause(ty::ClauseKind::ConstArgHasType(ct, _)) => {
+                if self.shallow_resolve_const(ct).is_ct_infer() {
+                    Some(Certainty::AMBIGUOUS)
+                } else {
+                    None
+                }
+            }
             ty::PredicateKind::Clause(ty::ClauseKind::WellFormed(arg)) => {
                 let arg = self.shallow_resolve_term(arg);
                 if arg.is_trivially_wf(self.tcx) {