Merge pull request #20694 from ShoyuVanilla/bump-rustc

minor: Yet another rustc crates bump
This commit is contained in:
Laurențiu Nicola 2025-09-18 18:38:03 +00:00 committed by GitHub
commit e6c3152214
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 62 additions and 49 deletions

44
Cargo.lock generated
View File

@ -1863,9 +1863,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_abi" name = "ra-ap-rustc_abi"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd3df655461690c1554bc0e355f19495eef6cd729dc29f01bd07cb7cd2a0990a" checksum = "016c05852e89655395fbf7d5e729e31cd58b2690480b3a8468eb2b38c91f3756"
dependencies = [ dependencies = [
"bitflags 2.9.1", "bitflags 2.9.1",
"ra-ap-rustc_hashes", "ra-ap-rustc_hashes",
@ -1875,24 +1875,24 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_ast_ir" name = "ra-ap-rustc_ast_ir"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "10f55c57676d67dba036171d23f7941a9c3b884181c5e93d3bd5fa599f8f129b" checksum = "c5bff48bd0a26f17a4e2e8610bc393296c3d002e221f5c6c4d2875e6a64a3b4b"
[[package]] [[package]]
name = "ra-ap-rustc_hashes" name = "ra-ap-rustc_hashes"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "feec9ffe50d93b8f17770b49d4cbf46280e074a105c7c9325c8d2171cf395b76" checksum = "5d15e7571f6f31f6112fd2fcbc3450a6ef477cc6bfe51643a2b110436a7455f0"
dependencies = [ dependencies = [
"rustc-stable-hash", "rustc-stable-hash",
] ]
[[package]] [[package]]
name = "ra-ap-rustc_index" name = "ra-ap-rustc_index"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a73bab902bcdeceac4a9630ed732d19f6b7189cbe8e828a94156a780bd8e1196" checksum = "60a30f0a15682f1194e5812cc3544266f3494ca8fb3c5033e8b9c08f4f8b8c6d"
dependencies = [ dependencies = [
"ra-ap-rustc_index_macros", "ra-ap-rustc_index_macros",
"smallvec", "smallvec",
@ -1900,9 +1900,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_index_macros" name = "ra-ap-rustc_index_macros"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "88c7906b654b9c4188aee3fde82a7449bac6e156a5d86ad923bae05bd5040690" checksum = "e2f82c9176b964591e1657a9f0fae2850525542d39075c49c2459afc291f4804"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -1911,9 +1911,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_lexer" name = "ra-ap-rustc_lexer"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "acec3893f60dca2a37f9e838c08f3f3c8e012ce36194c2b84da96781e794e359" checksum = "585c71ff7da5ca1e8a0c65d5e7cec7ab2a7e9e45b6859543bd2d0be21bee631c"
dependencies = [ dependencies = [
"memchr", "memchr",
"unicode-properties", "unicode-properties",
@ -1922,9 +1922,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_next_trait_solver" name = "ra-ap-rustc_next_trait_solver"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4626e22dc21062bdac1a8340b497365e1983a69cc271d7d052a62348b88bd7f" checksum = "839f521a6cd97c71b2b6681604ace38a9c6737f7a223d072fa8f909879f9dc4b"
dependencies = [ dependencies = [
"derive-where", "derive-where",
"ra-ap-rustc_index", "ra-ap-rustc_index",
@ -1935,9 +1935,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_parse_format" name = "ra-ap-rustc_parse_format"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "47a95720d31edf45a8ccde190c14954425af0d53c9b6d4702fdd905b3951a2e1" checksum = "83e7872a4fa0620937b60fc6270aa8c31864cb324357553e2be5b2bdc25fa89a"
dependencies = [ dependencies = [
"ra-ap-rustc_lexer", "ra-ap-rustc_lexer",
"rustc-literal-escaper 0.0.5", "rustc-literal-escaper 0.0.5",
@ -1945,9 +1945,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_pattern_analysis" name = "ra-ap-rustc_pattern_analysis"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0c1ebf6272bf11f0ba3b909e3405f547de32ea19d745b8fef11f1fb643b72fcd" checksum = "4ecd7f9b960c8cf1e9d02a25297f52a520134132164cfedd3e69fee4f294d41c"
dependencies = [ dependencies = [
"ra-ap-rustc_index", "ra-ap-rustc_index",
"rustc-hash 2.1.1", "rustc-hash 2.1.1",
@ -1958,9 +1958,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_type_ir" name = "ra-ap-rustc_type_ir"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a9aa8f1344940e097514403c53bb5a1e4f5c3986da888461bc651373d195090b" checksum = "9494498f8f7c57a5b4ea4e35a6c554cca8d5323adb534d13dc6cd117a7e00e4d"
dependencies = [ dependencies = [
"arrayvec", "arrayvec",
"bitflags 2.9.1", "bitflags 2.9.1",
@ -1978,9 +1978,9 @@ dependencies = [
[[package]] [[package]]
name = "ra-ap-rustc_type_ir_macros" name = "ra-ap-rustc_type_ir_macros"
version = "0.130.0" version = "0.131.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "30c65f1a5da2f3c39d72a56687694568abb203b3737a2321090e112da04958b3" checksum = "28ed893760b86529080af59438c28dfa9ca976b821cfd0a3b0eb9591932847e6"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",

View File

@ -89,14 +89,14 @@ vfs-notify = { path = "./crates/vfs-notify", version = "0.0.0" }
vfs = { path = "./crates/vfs", version = "0.0.0" } vfs = { path = "./crates/vfs", version = "0.0.0" }
edition = { path = "./crates/edition", version = "0.0.0" } edition = { path = "./crates/edition", version = "0.0.0" }
ra-ap-rustc_lexer = { version = "0.130", default-features = false } ra-ap-rustc_lexer = { version = "0.131", default-features = false }
ra-ap-rustc_parse_format = { version = "0.130", default-features = false } ra-ap-rustc_parse_format = { version = "0.131", default-features = false }
ra-ap-rustc_index = { version = "0.130", default-features = false } ra-ap-rustc_index = { version = "0.131", default-features = false }
ra-ap-rustc_abi = { version = "0.130", default-features = false } ra-ap-rustc_abi = { version = "0.131", default-features = false }
ra-ap-rustc_pattern_analysis = { version = "0.130", default-features = false } ra-ap-rustc_pattern_analysis = { version = "0.131", default-features = false }
ra-ap-rustc_ast_ir = { version = "0.130", default-features = false } ra-ap-rustc_ast_ir = { version = "0.131", default-features = false }
ra-ap-rustc_type_ir = { version = "0.130", default-features = false } ra-ap-rustc_type_ir = { version = "0.131", default-features = false }
ra-ap-rustc_next_trait_solver = { version = "0.130", default-features = false } ra-ap-rustc_next_trait_solver = { version = "0.131", default-features = false }
# local crates that aren't published to crates.io. These should not have versions. # local crates that aren't published to crates.io. These should not have versions.

View File

@ -910,7 +910,7 @@ impl<'db> InferenceTable<'db> {
match result { match result {
Ok((_, Certainty::Yes)) => {} Ok((_, Certainty::Yes)) => {}
Err(rustc_type_ir::solve::NoSolution) => {} Err(rustc_type_ir::solve::NoSolution) => {}
Ok((_, Certainty::Maybe(_))) => { Ok((_, Certainty::Maybe { .. })) => {
self.fulfillment_cx.register_predicate_obligation( self.fulfillment_cx.register_predicate_obligation(
&self.infer_ctxt, &self.infer_ctxt,
Obligation::new( Obligation::new(

View File

@ -182,7 +182,7 @@ impl<'db> FulfillmentCtxt<'db> {
if let Some(certainty) = delegate.compute_goal_fast_path(goal, Span::dummy()) { if let Some(certainty) = delegate.compute_goal_fast_path(goal, Span::dummy()) {
match certainty { match certainty {
Certainty::Yes => {} Certainty::Yes => {}
Certainty::Maybe(_) => { Certainty::Maybe { .. } => {
self.obligations.register(obligation, None); self.obligations.register(obligation, None);
} }
} }
@ -211,7 +211,7 @@ impl<'db> FulfillmentCtxt<'db> {
match certainty { match certainty {
Certainty::Yes => {} Certainty::Yes => {}
Certainty::Maybe(_) => self.obligations.register(obligation, stalled_on), Certainty::Maybe { .. } => self.obligations.register(obligation, stalled_on),
} }
} }

View File

@ -153,15 +153,17 @@ pub(super) fn fulfillment_error_for_stalled<'db>(
Span::dummy(), Span::dummy(),
None, None,
) { ) {
Ok(GoalEvaluation { certainty: Certainty::Maybe(MaybeCause::Ambiguity), .. }) => { Ok(GoalEvaluation {
(FulfillmentErrorCode::Ambiguity { overflow: None }, true) certainty: Certainty::Maybe { cause: MaybeCause::Ambiguity, .. },
} ..
}) => (FulfillmentErrorCode::Ambiguity { overflow: None }, true),
Ok(GoalEvaluation { Ok(GoalEvaluation {
certainty: certainty:
Certainty::Maybe(MaybeCause::Overflow { Certainty::Maybe {
suggest_increasing_limit, cause:
keep_constraints: _, MaybeCause::Overflow { suggest_increasing_limit, keep_constraints: _ },
}), ..
},
.. ..
}) => ( }) => (
FulfillmentErrorCode::Ambiguity { overflow: Some(suggest_increasing_limit) }, FulfillmentErrorCode::Ambiguity { overflow: Some(suggest_increasing_limit) },
@ -314,7 +316,8 @@ impl<'db> BestObligation<'db> {
.instantiate_proof_tree_for_nested_goal(GoalSource::Misc, obligation.as_goal()); .instantiate_proof_tree_for_nested_goal(GoalSource::Misc, obligation.as_goal());
// Skip nested goals that aren't the *reason* for our goal's failure. // Skip nested goals that aren't the *reason* for our goal's failure.
match (self.consider_ambiguities, nested_goal.result()) { match (self.consider_ambiguities, nested_goal.result()) {
(true, Ok(Certainty::Maybe(MaybeCause::Ambiguity))) | (false, Err(_)) => {} (true, Ok(Certainty::Maybe { cause: MaybeCause::Ambiguity, .. }))
| (false, Err(_)) => {}
_ => continue, _ => continue,
} }
@ -456,7 +459,8 @@ impl<'db> ProofTreeVisitor<'db> for BestObligation<'db> {
let interner = goal.infcx().interner; let interner = goal.infcx().interner;
// Skip goals that aren't the *reason* for our goal's failure. // Skip goals that aren't the *reason* for our goal's failure.
match (self.consider_ambiguities, goal.result()) { match (self.consider_ambiguities, goal.result()) {
(true, Ok(Certainty::Maybe(MaybeCause::Ambiguity))) | (false, Err(_)) => {} (true, Ok(Certainty::Maybe { cause: MaybeCause::Ambiguity, .. })) | (false, Err(_)) => {
}
_ => return ControlFlow::Continue(()), _ => return ControlFlow::Continue(()),
} }

View File

@ -321,4 +321,13 @@ impl<'db> rustc_type_ir::InferCtxtLike for InferCtxt<'db> {
fn sub_unify_ty_vids_raw(&self, a: rustc_type_ir::TyVid, b: rustc_type_ir::TyVid) { fn sub_unify_ty_vids_raw(&self, a: rustc_type_ir::TyVid, b: rustc_type_ir::TyVid) {
self.sub_unify_ty_vids_raw(a, b); self.sub_unify_ty_vids_raw(a, b);
} }
fn opaques_with_sub_unified_hidden_type(
&self,
_ty: TyVid,
) -> Vec<rustc_type_ir::AliasTy<Self::Interner>> {
// FIXME: I guess we are okay without this for now since currently r-a lacks of
// detailed checks over opaque types. Might need to implement this in future.
vec![]
}
} }

View File

@ -208,7 +208,7 @@ impl<'db> ProofTreeVisitor<'db> for Select {
// Don't winnow until `Certainty::Yes` -- we don't need to winnow until // Don't winnow until `Certainty::Yes` -- we don't need to winnow until
// codegen, and only on the good path. // codegen, and only on the good path.
if matches!(goal.result().unwrap(), Certainty::Maybe(..)) { if matches!(goal.result().unwrap(), Certainty::Maybe { .. }) {
return ControlFlow::Break(Ok(None)); return ControlFlow::Break(Ok(None));
} }
@ -241,7 +241,7 @@ fn candidate_should_be_dropped_in_favor_of<'db>(
) -> bool { ) -> bool {
// Don't winnow until `Certainty::Yes` -- we don't need to winnow until // Don't winnow until `Certainty::Yes` -- we don't need to winnow until
// codegen, and only on the good path. // codegen, and only on the good path.
if matches!(other.result().unwrap(), Certainty::Maybe(..)) { if matches!(other.result().unwrap(), Certainty::Maybe { .. }) {
return false; return false;
} }
@ -284,13 +284,13 @@ fn candidate_should_be_dropped_in_favor_of<'db>(
} }
fn to_selection<'db>(cand: InspectCandidate<'_, 'db>) -> Option<Selection<'db>> { fn to_selection<'db>(cand: InspectCandidate<'_, 'db>) -> Option<Selection<'db>> {
if let Certainty::Maybe(..) = cand.shallow_certainty() { if let Certainty::Maybe { .. } = cand.shallow_certainty() {
return None; return None;
} }
let nested = match cand.result().expect("expected positive result") { let nested = match cand.result().expect("expected positive result") {
Certainty::Yes => Vec::new(), Certainty::Yes => Vec::new(),
Certainty::Maybe(_) => cand Certainty::Maybe { .. } => cand
.instantiate_nested_goals() .instantiate_nested_goals()
.into_iter() .into_iter()
.map(|nested| { .map(|nested| {

View File

@ -350,7 +350,7 @@ impl<'a, 'db> InspectGoal<'a, 'db> {
inspect::ProbeStep::MakeCanonicalResponse { shallow_certainty: c } => { inspect::ProbeStep::MakeCanonicalResponse { shallow_certainty: c } => {
assert!(matches!( assert!(matches!(
shallow_certainty.replace(c), shallow_certainty.replace(c),
None | Some(Certainty::Maybe(MaybeCause::Ambiguity)) None | Some(Certainty::Maybe { cause: MaybeCause::Ambiguity, .. })
)); ));
} }
inspect::ProbeStep::NestedProbe(ref probe) => { inspect::ProbeStep::NestedProbe(ref probe) => {

View File

@ -277,7 +277,7 @@ pub fn next_trait_solve(
Ok((_, Certainty::Yes, args)) => NextTraitSolveResult::Certain( Ok((_, Certainty::Yes, args)) => NextTraitSolveResult::Certain(
convert_canonical_args_for_result(DbInterner::new_with(db, Some(krate), block), args), convert_canonical_args_for_result(DbInterner::new_with(db, Some(krate), block), args),
), ),
Ok((_, Certainty::Maybe(_), args)) => { Ok((_, Certainty::Maybe { .. }, args)) => {
let subst = convert_canonical_args_for_result( let subst = convert_canonical_args_for_result(
DbInterner::new_with(db, Some(krate), block), DbInterner::new_with(db, Some(krate), block),
args, args,
@ -316,7 +316,7 @@ pub fn next_trait_solve_canonical_in_ctxt<'db>(
Ok((_, Certainty::Yes, args)) => NextTraitSolveResult::Certain( Ok((_, Certainty::Yes, args)) => NextTraitSolveResult::Certain(
convert_canonical_args_for_result(infer_ctxt.interner, args), convert_canonical_args_for_result(infer_ctxt.interner, args),
), ),
Ok((_, Certainty::Maybe(_), args)) => { Ok((_, Certainty::Maybe { .. }, args)) => {
let subst = convert_canonical_args_for_result(infer_ctxt.interner, args); let subst = convert_canonical_args_for_result(infer_ctxt.interner, args);
NextTraitSolveResult::Uncertain(chalk_ir::Canonical { NextTraitSolveResult::Uncertain(chalk_ir::Canonical {
binders: subst.binders, binders: subst.binders,