about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMazdak Farrokhzad <twingoow@gmail.com>2020-01-21 18:47:58 +0100
committerMazdak Farrokhzad <twingoow@gmail.com>2020-01-21 18:47:58 +0100
commit7dceff9b5b2e41855ff3ba2fab3a2ae41e965df5 (patch)
tree4863611c11f5f6900876f63bd04548459626512a /src
parent1240a3180d474f064791686602e324fe683a0645 (diff)
downloadrust-7dceff9b5b2e41855ff3ba2fab3a2ae41e965df5.tar.gz
rust-7dceff9b5b2e41855ff3ba2fab3a2ae41e965df5.zip
typeck: remove redundant diverges check
Diffstat (limited to 'src')
-rw-r--r--src/librustc_typeck/check/_match.rs18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/librustc_typeck/check/_match.rs b/src/librustc_typeck/check/_match.rs
index d339e3dbf5d..686cdfbc089 100644
--- a/src/librustc_typeck/check/_match.rs
+++ b/src/librustc_typeck/check/_match.rs
@@ -183,16 +183,14 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
         arms: &'tcx [hir::Arm<'tcx>],
         source: hir::MatchSource,
     ) {
-        if self.diverges.get().is_always() {
-            use hir::MatchSource::*;
-            let msg = match source {
-                IfDesugar { .. } | IfLetDesugar { .. } => "block in `if` expression",
-                WhileDesugar { .. } | WhileLetDesugar { .. } => "block in `while` expression",
-                _ => "arm",
-            };
-            for arm in arms {
-                self.warn_if_unreachable(arm.body.hir_id, arm.body.span, msg);
-            }
+        use hir::MatchSource::*;
+        let msg = match source {
+            IfDesugar { .. } | IfLetDesugar { .. } => "block in `if` expression",
+            WhileDesugar { .. } | WhileLetDesugar { .. } => "block in `while` expression",
+            _ => "arm",
+        };
+        for arm in arms {
+            self.warn_if_unreachable(arm.body.hir_id, arm.body.span, msg);
         }
     }