fix: Resolve private fields in type inference

This commit is contained in:
Lukas Wirth 2022-02-23 16:45:58 +01:00
parent de0941301e
commit 41b6b372a7
2 changed files with 17 additions and 1 deletions

View file

@ -532,6 +532,11 @@ impl<'a> InferenceContext<'a> {
.substitute(Interner, &parameters),
)
} else {
// Write down the first field resolution even if it is not visible
// This aids IDE features for private fields like goto def and in
// case of autoderef finding an applicable field, this will be
// overwritten in a following cycle
self.write_field_resolution_if_empty(tgt_expr, field);
None
}
}
@ -546,6 +551,11 @@ impl<'a> InferenceContext<'a> {
.substitute(Interner, &parameters),
)
} else {
// Write down the first field resolution even if it is not visible
// This aids IDE features for private fields like goto def and in
// case of autoderef finding an applicable field, this will be
// overwritten in a following cycle
self.write_field_resolution_if_empty(tgt_expr, field);
None
}
}