summary refs log tree commit diff
path: root/compiler/rustc_parse/src/parser/expr.rs
diff options
context:
space:
mode:
authorKivooeo <Kivooeo123@gmail.com>2025-04-25 15:55:44 +0500
committerKivooeo <Kivooeo123@gmail.com>2025-04-25 17:02:59 +0500
commitf072d3074170f1e70a6f6a1b309fa43f62c25a3c (patch)
tree51537a73b5ef7cf7a5a4072b2bd821e64d7ad932 /compiler/rustc_parse/src/parser/expr.rs
parent847e3ee6b0e614937eee4e6d8f61094411eadcc0 (diff)
downloadrust-f072d3074170f1e70a6f6a1b309fa43f62c25a3c.tar.gz
rust-f072d3074170f1e70a6f6a1b309fa43f62c25a3c.zip
resolved conflict
Diffstat (limited to 'compiler/rustc_parse/src/parser/expr.rs')
-rw-r--r--compiler/rustc_parse/src/parser/expr.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/compiler/rustc_parse/src/parser/expr.rs b/compiler/rustc_parse/src/parser/expr.rs
index 370eb3f402d..f3b53971b29 100644
--- a/compiler/rustc_parse/src/parser/expr.rs
+++ b/compiler/rustc_parse/src/parser/expr.rs
@@ -4073,14 +4073,18 @@ impl MutVisitor for CondChecker<'_> {
         match e.kind {
             ExprKind::Let(_, _, _, ref mut recovered @ Recovered::No) => {
                 if let Some(reason) = self.forbid_let_reason {
-                    *recovered = Recovered::Yes(self.parser.dcx().emit_err(
-                        errors::ExpectedExpressionFoundLet {
+                    let error = match reason {
+                        NotSupportedOr(or_span) => {
+                            self.parser.dcx().emit_err(errors::OrInLetChain { span: or_span })
+                        }
+                        _ => self.parser.dcx().emit_err(errors::ExpectedExpressionFoundLet {
                             span,
                             reason,
                             missing_let: self.missing_let,
                             comparison: self.comparison,
-                        },
-                    ));
+                        }),
+                    };
+                    *recovered = Recovered::Yes(error);
                 } else if self.depth > 1 {
                     // Top level `let` is always allowed; only gate chains
                     match self.let_chains_policy {