Auto merge of #115677 - matthewjasper:let-expr-recovery, r=b-naber
Improve invalid let expression handling - Move all of the checks for valid let expression positions to parsing. - Add a field to ExprKind::Let in AST/HIR to mark whether it's in a valid location. - Suppress some later errors and MIR construction for invalid let expressions. - Fix a (drop) scope issue that was also responsible for #104172. Fixes #104172 Fixes #104868
This commit is contained in:
commit
dac91a82e1
48 changed files with 2475 additions and 2287 deletions
|
@ -4180,7 +4180,7 @@ impl<'a: 'ast, 'b, 'ast, 'tcx> LateResolutionVisitor<'a, 'b, 'ast, 'tcx> {
|
|||
self.resolve_expr(e, Some(&expr));
|
||||
}
|
||||
|
||||
ExprKind::Let(ref pat, ref scrutinee, _) => {
|
||||
ExprKind::Let(ref pat, ref scrutinee, _, _) => {
|
||||
self.visit_expr(scrutinee);
|
||||
self.resolve_pattern_top(pat, PatternSource::Let);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue