Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir-ty/src/lower/path.rs')
-rw-r--r--crates/hir-ty/src/lower/path.rs8
1 files changed, 5 insertions, 3 deletions
diff --git a/crates/hir-ty/src/lower/path.rs b/crates/hir-ty/src/lower/path.rs
index 9ba0da6f49..6d3ce74aed 100644
--- a/crates/hir-ty/src/lower/path.rs
+++ b/crates/hir-ty/src/lower/path.rs
@@ -774,7 +774,7 @@ impl<'a, 'b, 'db> PathLoweringContext<'a, 'b, 'db> {
}
}
- fn parent_arg(&mut self, param_id: GenericParamId) -> GenericArg<'db> {
+ fn parent_arg(&mut self, _param_idx: u32, param_id: GenericParamId) -> GenericArg<'db> {
match param_id {
GenericParamId::TypeParamId(_) => {
Ty::new_error(self.ctx.ctx.interner, ErrorGuaranteed).into()
@@ -992,7 +992,7 @@ pub(crate) trait GenericArgsLowerer<'db> {
preceding_args: &[GenericArg<'db>],
) -> GenericArg<'db>;
- fn parent_arg(&mut self, param_id: GenericParamId) -> GenericArg<'db>;
+ fn parent_arg(&mut self, param_idx: u32, param_id: GenericParamId) -> GenericArg<'db>;
}
/// Returns true if there was an error.
@@ -1129,7 +1129,9 @@ pub(crate) fn substs_from_args_and_bindings<'db>(
let mut substs = Vec::with_capacity(def_generics.len());
- substs.extend(def_generics.iter_parent_id().map(|id| ctx.parent_arg(id)));
+ substs.extend(
+ def_generics.iter_parent_id().enumerate().map(|(idx, id)| ctx.parent_arg(idx as u32, id)),
+ );
let mut args = args_slice.iter().enumerate().peekable();
let mut params = def_generics.iter_self().peekable();