mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-11-03 05:13:35 +00:00
call infer_pats from infer::expr with context
This commit is contained in:
parent
7befcb32e4
commit
dd461203a6
1 changed files with 4 additions and 5 deletions
|
|
@ -334,7 +334,7 @@ impl InferenceContext<'_> {
|
|||
ExprIsRead::No
|
||||
};
|
||||
let input_ty = self.infer_expr(expr, &Expectation::none(), child_is_read);
|
||||
self.infer_top_pat(pat, &input_ty);
|
||||
self.infer_top_pat(pat, &input_ty, None);
|
||||
self.result.standard_types.bool_.clone()
|
||||
}
|
||||
Expr::Block { statements, tail, label, id } => {
|
||||
|
|
@ -461,7 +461,7 @@ impl InferenceContext<'_> {
|
|||
|
||||
// Now go through the argument patterns
|
||||
for (arg_pat, arg_ty) in args.iter().zip(&sig_tys) {
|
||||
self.infer_top_pat(*arg_pat, arg_ty);
|
||||
self.infer_top_pat(*arg_pat, arg_ty, None);
|
||||
}
|
||||
|
||||
// FIXME: lift these out into a struct
|
||||
|
|
@ -582,7 +582,7 @@ impl InferenceContext<'_> {
|
|||
let mut all_arms_diverge = Diverges::Always;
|
||||
for arm in arms.iter() {
|
||||
let input_ty = self.resolve_ty_shallow(&input_ty);
|
||||
self.infer_top_pat(arm.pat, &input_ty);
|
||||
self.infer_top_pat(arm.pat, &input_ty, None);
|
||||
}
|
||||
|
||||
let expected = expected.adjust_for_branches(&mut self.table);
|
||||
|
|
@ -927,7 +927,7 @@ impl InferenceContext<'_> {
|
|||
let resolver_guard =
|
||||
self.resolver.update_to_inner_scope(self.db.upcast(), self.owner, tgt_expr);
|
||||
self.inside_assignment = true;
|
||||
self.infer_top_pat(target, &rhs_ty);
|
||||
self.infer_top_pat(target, &rhs_ty, None);
|
||||
self.inside_assignment = false;
|
||||
self.resolver.reset_to_guard(resolver_guard);
|
||||
}
|
||||
|
|
@ -1632,7 +1632,6 @@ impl InferenceContext<'_> {
|
|||
decl_ty
|
||||
};
|
||||
|
||||
this.infer_top_pat(*pat, &ty);
|
||||
let decl = DeclContext {
|
||||
has_else: else_branch.is_some(),
|
||||
origin: DeclOrigin::LocalDecl,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue