Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/hir/src/display.rs')
-rw-r--r--crates/hir/src/display.rs13
1 files changed, 11 insertions, 2 deletions
diff --git a/crates/hir/src/display.rs b/crates/hir/src/display.rs
index f80ccf84a2..a40022c43a 100644
--- a/crates/hir/src/display.rs
+++ b/crates/hir/src/display.rs
@@ -99,7 +99,13 @@ impl HirDisplay for Function {
}
// FIXME: Use resolved `param.ty` once we no longer discard lifetimes
- for (type_ref, param) in data.params.iter().zip(self.assoc_fn_params(db)).skip(skip_self) {
+ for (type_ref, param) in data
+ .params
+ .iter()
+ .zip(self.assoc_fn_params(db))
+ .take(data.params.len() - data.is_varargs() as usize)
+ .skip(skip_self)
+ {
let local = param.as_local(db).map(|it| it.name(db));
if !first {
f.write_str(", ")?;
@@ -114,7 +120,10 @@ impl HirDisplay for Function {
}
if data.is_varargs() {
- f.write_str(", ...")?;
+ if !first {
+ f.write_str(", ")?;
+ }
+ f.write_str("...")?;
}
f.write_char(')')?;