Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
4996f53
stabilization_guide: fix macro name and syntax in gating example
ali90h Aug 26, 2025
2521a90
Remove myself from adhoc_group
jieyouxu Aug 26, 2025
731595c
Merge pull request #2555 from jieyouxu/rm-rotation
jieyouxu Aug 26, 2025
6b49e11
contributing: clarify when to update a branch vs avoid during review
ali90h Aug 26, 2025
65f1a9f
contributing: restore tests/intro.md link; avoid 'this repo' wording
ali90h Aug 26, 2025
3603ed3
Merge pull request #2554 from ali90h/clarify-keep-branch-up-to-date
jyn514 Aug 26, 2025
9ddd03c
Mention our policy on typofixes for internal docs
apiraino Aug 6, 2025
e2a4fb0
dates(diagnostics,tests): refresh annotated dates to Aug 2025; preser…
ali90h Aug 28, 2025
8e618a9
dates(infra): refresh date-check annotations for Aug 2025; preserve l…
ali90h Aug 28, 2025
d902299
dates(queries): refresh date-check annotations to 2025-08; preserve l…
ali90h Aug 28, 2025
a557aef
dates(types,traits): refresh date-check annotations for Aug/2025-08; …
ali90h Aug 28, 2025
a8b0090
Merge pull request #2557 from ali90h/date-sweep-2025-08-infra
jyn514 Aug 28, 2025
dd19ec2
Merge pull request #2558 from ali90h/date-sweep-2025-08-queries
jyn514 Aug 28, 2025
fc26474
Merge pull request #2559 from ali90h/date-sweep-2025-08-types-traits
jyn514 Aug 28, 2025
7a38d68
Merge pull request #2556 from ali90h/date-sweep-2025-08-diag-tests
jyn514 Aug 28, 2025
c256865
Merge pull request #2553 from ali90h/fix-stab-guide-gating-v2
jyn514 Aug 28, 2025
80c1ea3
Update mdbook
ehuss Aug 29, 2025
04ec8a7
Merge pull request #2560 from ehuss/update-mdbook
tshepang Aug 29, 2025
70366bd
Merge pull request #2536 from apiraino/no-typofixes-pls
apiraino Aug 30, 2025
f9a5967
Start documenting tests/rustdoc-json
aDotInTheVoid May 28, 2025
93e6592
More docs
aDotInTheVoid Aug 30, 2025
c206945
Revert "dates: refresh type system & traits date annotations to Aug/2…
tshepang Sep 1, 2025
9f9373e
Merge pull request #2564 from rust-lang/revert-2559-date-sweep-2025-0…
tshepang Sep 1, 2025
eab1ffd
Revert "dates: refresh query-system date annotations to 2025-08 (pres…
tshepang Sep 1, 2025
840c648
Merge pull request #2565 from rust-lang/revert-2558-date-sweep-2025-0…
tshepang Sep 1, 2025
4ed4837
Revert "dates: refresh infra/tooling date annotations to Aug 2025"
tshepang Sep 1, 2025
c705b95
Merge pull request #2566 from rust-lang/revert-2557-date-sweep-2025-0…
tshepang Sep 1, 2025
2453e05
Revert "dates: refresh diagnostics/ and tests/ annotated dates to Aug…
tshepang Sep 1, 2025
d6a8524
Merge pull request #2567 from rust-lang/revert-2556-date-sweep-2025-0…
tshepang Sep 1, 2025
6f0ebdb
Migrate more things in the new solver to specific `DefId`s
ChayimFriedman2 Sep 2, 2025
b7f3606
Fix some broken links
Sep 3, 2025
07ae014
Update src/appendix/code-index.md
emmet-horgan Sep 4, 2025
7ad4c6a
Update src/compiler-debugging.md
emmet-horgan Sep 4, 2025
2a7331a
Fix user facing string
emmet-horgan Sep 4, 2025
aba7507
Merge pull request #2571 from emmet-horgan/bugfix-broken-links
tshepang Sep 4, 2025
f374dce
clarify typo pr guidance
tshepang Sep 5, 2025
b764616
sembr
tshepang Sep 5, 2025
a8ed7bb
Merge pull request #2574 from rust-lang/tshepang/sembr
tshepang Sep 5, 2025
4d69a29
avoid inline external links
tshepang Sep 5, 2025
26f3840
Merge pull request #2575 from rust-lang/tshepang/inline-external-links
tshepang Sep 5, 2025
951733c
Update link to `resolve_regions_and_report_errors`
ada4a Sep 5, 2025
ac5a937
Merge pull request #2576 from ada4a/patch-1
tshepang Sep 5, 2025
6907e64
Update renamed `take_region_var_origins`
ada4a Sep 5, 2025
b9cbfb3
Merge pull request #2577 from ada4a/patch-2
tshepang Sep 5, 2025
cd99172
Make footnote render correctly in github
aDotInTheVoid Sep 5, 2025
1d2457b
Consistent punctuation
aDotInTheVoid Sep 5, 2025
d7f27bf
Better link
aDotInTheVoid Sep 5, 2025
b96ca59
Merge pull request #2422 from aDotInTheVoid/tenthousandyears
aDotInTheVoid Sep 5, 2025
4e18796
Zulip streams have been renamed to channels
tshepang Sep 6, 2025
55f913c
capitalize "zulip"
tshepang Sep 6, 2025
8b063c4
Merge pull request #2578 from rust-lang/tshepang/streams-renamed
tshepang Sep 6, 2025
4156ed6
reduce overlong physical lines (sembr)
tshepang Sep 6, 2025
e65952c
Merge pull request #2579 from rust-lang/tshepang/overlong
tshepang Sep 6, 2025
91241a1
Ensure indirect is first projection in try_as_place.
cjgillot Jul 2, 2025
4b5d0e0
docs(std): add error docs for path canonicalize
smirzaei Sep 7, 2025
006c85d
Make some matches non-exhaustive.
nnethercote Jul 31, 2025
1e67915
Move `rustc_middle::MaxUniverse` to `rustc_infer`.
nnethercote Jul 31, 2025
a171ec3
Move `describe_as_module` from `rustc_middle::print` to `rustc:middle…
nnethercote Jul 31, 2025
cfc73b5
Prepare for merging from rust-lang/rust
invalid-email-address Sep 8, 2025
7dcb968
Merge ref '2f3f27bf79ec' from rust-lang/rust
invalid-email-address Sep 8, 2025
7fa2353
Fix typo in default.rs
justinyaodu Sep 8, 2025
177583d
Merge pull request #2582 from rust-lang/rustc-pull
tshepang Sep 8, 2025
30ad58f
Merge pull request #2573 from rust-lang/tshepang/make-more-clear
tshepang Sep 8, 2025
9a52a83
Allow static regions in `type_name`.
nnethercote Sep 7, 2025
1e46fa9
Rollup merge of #146111 - ChayimFriedman2:more-ns-specific-defid, r=lcnr
matthiaskrgr Sep 8, 2025
9a1feef
Rollup merge of #146298 - cjgillot:gvn-derefer, r=nnethercote
matthiaskrgr Sep 8, 2025
d1ab870
Rollup merge of #146299 - smirzaei:doc/improve-path-canonicalize-docs…
matthiaskrgr Sep 8, 2025
00bffaa
Rollup merge of #146310 - nnethercote:fix-146249, r=lcnr
matthiaskrgr Sep 8, 2025
2eab500
Rollup merge of #146313 - nnethercote:rustc_middle-ty-cleanups-2, r=lcnr
matthiaskrgr Sep 8, 2025
803b5b5
Rollup merge of #146319 - justinyaodu:patch-1, r=jhpratt
matthiaskrgr Sep 8, 2025
65e4c54
Rollup merge of #146320 - tshepang:rdg-sync, r=tshepang
matthiaskrgr Sep 8, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions compiler/rustc_const_eval/src/util/type_name.rs
Original file line number Diff line number Diff line change
Expand Up @@ -168,10 +168,11 @@ impl<'tcx> PrettyPrinter<'tcx> for TypeNamePrinter<'tcx> {
// Bound regions are always printed (as `'_`), which gives some idea that they are special,
// even though the `for` is omitted by the pretty printer.
// E.g. `for<'a, 'b> fn(&'a u32, &'b u32)` is printed as "fn(&'_ u32, &'_ u32)".
let kind = region.kind();
match region.kind() {
ty::ReErased | ty::ReEarlyParam(_) => false,
ty::ReErased | ty::ReEarlyParam(_) | ty::ReStatic => false,
ty::ReBound(..) => true,
_ => unreachable!(),
_ => panic!("type_name unhandled region: {kind:?}"),
}
}

Expand Down
43 changes: 41 additions & 2 deletions compiler/rustc_infer/src/infer/relate/generalize.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ use rustc_hir::def_id::DefId;
use rustc_middle::bug;
use rustc_middle::ty::error::TypeError;
use rustc_middle::ty::{
self, AliasRelationDirection, InferConst, MaxUniverse, Term, Ty, TyCtxt, TypeVisitable,
TypeVisitableExt, TypingMode,
self, AliasRelationDirection, InferConst, Term, Ty, TyCtxt, TypeSuperVisitable, TypeVisitable,
TypeVisitableExt, TypeVisitor, TypingMode,
};
use rustc_span::Span;
use tracing::{debug, instrument, warn};
Expand Down Expand Up @@ -290,6 +290,45 @@ impl<'tcx> InferCtxt<'tcx> {
}
}

/// Finds the max universe present
struct MaxUniverse {
max_universe: ty::UniverseIndex,
}

impl MaxUniverse {
fn new() -> Self {
MaxUniverse { max_universe: ty::UniverseIndex::ROOT }
}

fn max_universe(self) -> ty::UniverseIndex {
self.max_universe
}
}

impl<'tcx> TypeVisitor<TyCtxt<'tcx>> for MaxUniverse {
fn visit_ty(&mut self, t: Ty<'tcx>) {
if let ty::Placeholder(placeholder) = t.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}

t.super_visit_with(self)
}

fn visit_const(&mut self, c: ty::Const<'tcx>) {
if let ty::ConstKind::Placeholder(placeholder) = c.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}

c.super_visit_with(self)
}

fn visit_region(&mut self, r: ty::Region<'tcx>) {
if let ty::RePlaceholder(placeholder) = r.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}
}
}

/// The "generalizer" is used when handling inference variables.
///
/// The basic strategy for handling a constraint like `?A <: B` is to
Expand Down
11 changes: 10 additions & 1 deletion compiler/rustc_middle/src/query/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ use crate::traits::{
};
use crate::ty::fast_reject::SimplifiedType;
use crate::ty::layout::ValidityRequirement;
use crate::ty::print::{PrintTraitRefExt, describe_as_module};
use crate::ty::print::PrintTraitRefExt;
use crate::ty::util::AlwaysRequiresDrop;
use crate::ty::{
self, CrateInherentImpls, GenericArg, GenericArgsRef, PseudoCanonicalInput, SizedTraitKind, Ty,
Expand Down Expand Up @@ -2731,3 +2731,12 @@ rustc_queries! {

rustc_with_all_queries! { define_callbacks! }
rustc_feedable_queries! { define_feedable! }

fn describe_as_module(def_id: impl Into<LocalDefId>, tcx: TyCtxt<'_>) -> String {
let def_id = def_id.into();
if def_id.is_top_level_module() {
"top-level module".to_string()
} else {
format!("module `{}`", tcx.def_path_str(def_id))
}
}
28 changes: 27 additions & 1 deletion compiler/rustc_middle/src/ty/context.rs
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ use rustc_session::{Limit, Session};
use rustc_span::def_id::{CRATE_DEF_ID, DefPathHash, StableCrateId};
use rustc_span::{DUMMY_SP, Ident, Span, Symbol, kw, sym};
use rustc_type_ir::TyKind::*;
use rustc_type_ir::lang_items::{SolverLangItem, SolverTraitLangItem};
use rustc_type_ir::lang_items::{SolverAdtLangItem, SolverLangItem, SolverTraitLangItem};
pub use rustc_type_ir::lift::Lift;
use rustc_type_ir::{
CollectAndApply, Interner, TypeFlags, TypeFoldable, WithCachedTypeInfo, elaborate, search_graph,
Expand Down Expand Up @@ -94,6 +94,13 @@ impl<'tcx> Interner for TyCtxt<'tcx> {
type DefId = DefId;
type LocalDefId = LocalDefId;
type TraitId = DefId;
type ForeignId = DefId;
type FunctionId = DefId;
type ClosureId = DefId;
type CoroutineClosureId = DefId;
type CoroutineId = DefId;
type AdtId = DefId;
type ImplId = DefId;
type Span = Span;

type GenericArgs = ty::GenericArgsRef<'tcx>;
Expand Down Expand Up @@ -492,6 +499,10 @@ impl<'tcx> Interner for TyCtxt<'tcx> {
self.require_lang_item(solver_trait_lang_item_to_lang_item(lang_item), DUMMY_SP)
}

fn require_adt_lang_item(self, lang_item: SolverAdtLangItem) -> DefId {
self.require_lang_item(solver_adt_lang_item_to_lang_item(lang_item), DUMMY_SP)
}

fn is_lang_item(self, def_id: DefId, lang_item: SolverLangItem) -> bool {
self.is_lang_item(def_id, solver_lang_item_to_lang_item(lang_item))
}
Expand All @@ -500,6 +511,10 @@ impl<'tcx> Interner for TyCtxt<'tcx> {
self.is_lang_item(def_id, solver_trait_lang_item_to_lang_item(lang_item))
}

fn is_adt_lang_item(self, def_id: DefId, lang_item: SolverAdtLangItem) -> bool {
self.is_lang_item(def_id, solver_adt_lang_item_to_lang_item(lang_item))
}

fn is_default_trait(self, def_id: DefId) -> bool {
self.is_default_trait(def_id)
}
Expand All @@ -512,6 +527,10 @@ impl<'tcx> Interner for TyCtxt<'tcx> {
lang_item_to_solver_trait_lang_item(self.lang_items().from_def_id(def_id)?)
}

fn as_adt_lang_item(self, def_id: DefId) -> Option<SolverAdtLangItem> {
lang_item_to_solver_adt_lang_item(self.lang_items().from_def_id(def_id)?)
}

fn associated_type_def_ids(self, def_id: DefId) -> impl IntoIterator<Item = DefId> {
self.associated_items(def_id)
.in_definition_order()
Expand Down Expand Up @@ -783,6 +802,13 @@ bidirectional_lang_item_map! {
DynMetadata,
FutureOutput,
Metadata,
// tidy-alphabetical-end
}

bidirectional_lang_item_map! {
SolverAdtLangItem, lang_item_to_solver_adt_lang_item, solver_adt_lang_item_to_lang_item;

// tidy-alphabetical-start
Option,
Poll,
// tidy-alphabetical-end
Expand Down
1 change: 0 additions & 1 deletion compiler/rustc_middle/src/ty/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,6 @@ pub use self::typeck_results::{
CanonicalUserType, CanonicalUserTypeAnnotation, CanonicalUserTypeAnnotations, IsIdentity,
Rust2024IncompatiblePatInfo, TypeckResults, UserType, UserTypeAnnotationIndex, UserTypeKind,
};
pub use self::visit::*;
use crate::error::{OpaqueHiddenTypeMismatch, TypeMismatchReason};
use crate::metadata::ModChild;
use crate::middle::privacy::EffectiveVisibilities;
Expand Down
32 changes: 2 additions & 30 deletions compiler/rustc_middle/src/ty/predicate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -638,43 +638,15 @@ impl<'tcx> Predicate<'tcx> {
let predicate = self.kind();
match predicate.skip_binder() {
PredicateKind::Clause(ClauseKind::Trait(t)) => Some(predicate.rebind(t)),
PredicateKind::Clause(ClauseKind::Projection(..))
| PredicateKind::Clause(ClauseKind::HostEffect(..))
| PredicateKind::Clause(ClauseKind::ConstArgHasType(..))
| PredicateKind::Clause(ClauseKind::UnstableFeature(_))
| PredicateKind::NormalizesTo(..)
| PredicateKind::AliasRelate(..)
| PredicateKind::Subtype(..)
| PredicateKind::Coerce(..)
| PredicateKind::Clause(ClauseKind::RegionOutlives(..))
| PredicateKind::Clause(ClauseKind::WellFormed(..))
| PredicateKind::DynCompatible(..)
| PredicateKind::Clause(ClauseKind::TypeOutlives(..))
| PredicateKind::Clause(ClauseKind::ConstEvaluatable(..))
| PredicateKind::ConstEquate(..)
| PredicateKind::Ambiguous => None,
_ => None,
}
}

pub fn as_projection_clause(self) -> Option<PolyProjectionPredicate<'tcx>> {
let predicate = self.kind();
match predicate.skip_binder() {
PredicateKind::Clause(ClauseKind::Projection(t)) => Some(predicate.rebind(t)),
PredicateKind::Clause(ClauseKind::Trait(..))
| PredicateKind::Clause(ClauseKind::HostEffect(..))
| PredicateKind::Clause(ClauseKind::ConstArgHasType(..))
| PredicateKind::Clause(ClauseKind::UnstableFeature(_))
| PredicateKind::NormalizesTo(..)
| PredicateKind::AliasRelate(..)
| PredicateKind::Subtype(..)
| PredicateKind::Coerce(..)
| PredicateKind::Clause(ClauseKind::RegionOutlives(..))
| PredicateKind::Clause(ClauseKind::WellFormed(..))
| PredicateKind::DynCompatible(..)
| PredicateKind::Clause(ClauseKind::TypeOutlives(..))
| PredicateKind::Clause(ClauseKind::ConstEvaluatable(..))
| PredicateKind::ConstEquate(..)
| PredicateKind::Ambiguous => None,
_ => None,
}
}

Expand Down
12 changes: 1 addition & 11 deletions compiler/rustc_middle/src/ty/print/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use hir::def::Namespace;
use rustc_data_structures::fx::FxHashSet;
use rustc_data_structures::sso::SsoHashSet;
use rustc_hir as hir;
use rustc_hir::def_id::{CrateNum, DefId, LocalDefId};
use rustc_hir::def_id::{CrateNum, DefId};
use rustc_hir::definitions::{DefPathData, DisambiguatedDefPathData};
use tracing::{debug, instrument, trace};

Expand Down Expand Up @@ -396,16 +396,6 @@ impl<'tcx, P: Printer<'tcx>> Print<'tcx, P> for ty::Const<'tcx> {
}
}

// This is only used by query descriptions
pub fn describe_as_module(def_id: impl Into<LocalDefId>, tcx: TyCtxt<'_>) -> String {
let def_id = def_id.into();
if def_id.is_top_level_module() {
"top-level module".to_string()
} else {
format!("module `{}`", tcx.def_path_str(def_id))
}
}

impl<T> rustc_type_ir::ir_print::IrPrint<T> for TyCtxt<'_>
where
T: Copy + for<'a, 'tcx> Lift<TyCtxt<'tcx>, Lifted: Print<'tcx, FmtPrinter<'a, 'tcx>>>,
Expand Down
39 changes: 0 additions & 39 deletions compiler/rustc_middle/src/ty/visit.rs
Original file line number Diff line number Diff line change
Expand Up @@ -212,42 +212,3 @@ impl<'tcx> TypeVisitor<TyCtxt<'tcx>> for LateBoundRegionsCollector {
}
}
}

/// Finds the max universe present
pub struct MaxUniverse {
max_universe: ty::UniverseIndex,
}

impl MaxUniverse {
pub fn new() -> Self {
MaxUniverse { max_universe: ty::UniverseIndex::ROOT }
}

pub fn max_universe(self) -> ty::UniverseIndex {
self.max_universe
}
}

impl<'tcx> TypeVisitor<TyCtxt<'tcx>> for MaxUniverse {
fn visit_ty(&mut self, t: Ty<'tcx>) {
if let ty::Placeholder(placeholder) = t.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}

t.super_visit_with(self)
}

fn visit_const(&mut self, c: ty::consts::Const<'tcx>) {
if let ty::ConstKind::Placeholder(placeholder) = c.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}

c.super_visit_with(self)
}

fn visit_region(&mut self, r: ty::Region<'tcx>) {
if let ty::RePlaceholder(placeholder) = r.kind() {
self.max_universe = self.max_universe.max(placeholder.universe);
}
}
}
5 changes: 5 additions & 0 deletions compiler/rustc_mir_transform/src/gvn.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1644,6 +1644,11 @@ impl<'tcx> VnState<'_, 'tcx> {
let place =
Place { local, projection: self.tcx.mk_place_elems(projection.as_slice()) };
return Some(place);
} else if projection.last() == Some(&PlaceElem::Deref) {
// `Deref` can only be the first projection in a place.
// If we are here, we failed to find a local, and we already have a `Deref`.
// Trying to add projections will only result in an ill-formed place.
return None;
} else if let Value::Projection(pointer, proj) = *self.get(index)
&& (allow_complex_projection || proj.is_stable_offset())
&& let Some(proj) = self.try_as_place_elem(self.ty(index), proj, loc)
Expand Down
16 changes: 15 additions & 1 deletion compiler/rustc_next_trait_solver/src/coherence.rs
Original file line number Diff line number Diff line change
Expand Up @@ -435,7 +435,21 @@ where
}
}
ty::Error(_) => ControlFlow::Break(OrphanCheckEarlyExit::LocalTy(ty)),
ty::Closure(did, ..) | ty::CoroutineClosure(did, ..) | ty::Coroutine(did, ..) => {
ty::Closure(did, ..) => {
if self.def_id_is_local(did) {
ControlFlow::Break(OrphanCheckEarlyExit::LocalTy(ty))
} else {
self.found_non_local_ty(ty)
}
}
ty::CoroutineClosure(did, ..) => {
if self.def_id_is_local(did) {
ControlFlow::Break(OrphanCheckEarlyExit::LocalTy(ty))
} else {
self.found_non_local_ty(ty)
}
}
ty::Coroutine(did, ..) => {
if self.def_id_is_local(did) {
ControlFlow::Break(OrphanCheckEarlyExit::LocalTy(ty))
} else {
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_next_trait_solver/src/delegate.rs
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ pub trait SolverDelegate: Deref<Target = Self::Infcx> + Sized {
&self,
goal_trait_ref: ty::TraitRef<Self::Interner>,
trait_assoc_def_id: <Self::Interner as Interner>::DefId,
impl_def_id: <Self::Interner as Interner>::DefId,
impl_def_id: <Self::Interner as Interner>::ImplId,
) -> Result<
Option<<Self::Interner as Interner>::DefId>,
<Self::Interner as Interner>::ErrorGuaranteed,
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_next_trait_solver/src/solve/assembly/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ where
fn consider_impl_candidate(
ecx: &mut EvalCtxt<'_, D>,
goal: Goal<I, Self>,
impl_def_id: I::DefId,
impl_def_id: I::ImplId,
) -> Result<Candidate<I>, NoSolution>;

/// If the predicate contained an error, we want to avoid emitting unnecessary trait
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -605,7 +605,7 @@ fn coroutine_closure_to_certain_coroutine<I: Interner>(
cx: I,
goal_kind: ty::ClosureKind,
goal_region: I::Region,
def_id: I::DefId,
def_id: I::CoroutineClosureId,
args: ty::CoroutineClosureArgs<I>,
sig: ty::CoroutineClosureSignature<I>,
) -> I::Ty {
Expand All @@ -629,7 +629,7 @@ fn coroutine_closure_to_ambiguous_coroutine<I: Interner>(
cx: I,
goal_kind: ty::ClosureKind,
goal_region: I::Region,
def_id: I::DefId,
def_id: I::CoroutineClosureId,
args: ty::CoroutineClosureArgs<I>,
sig: ty::CoroutineClosureSignature<I>,
) -> I::Ty {
Expand Down Expand Up @@ -664,7 +664,7 @@ fn coroutine_closure_to_ambiguous_coroutine<I: Interner>(
pub(in crate::solve) fn extract_fn_def_from_const_callable<I: Interner>(
cx: I,
self_ty: I::Ty,
) -> Result<(ty::Binder<I, (I::FnInputTys, I::Ty)>, I::DefId, I::GenericArgs), NoSolution> {
) -> Result<(ty::Binder<I, (I::FnInputTys, I::Ty)>, I::FunctionId, I::GenericArgs), NoSolution> {
match self_ty.kind() {
ty::FnDef(def_id, args) => {
let sig = cx.fn_sig(def_id);
Expand Down
Loading
Loading