about summary refs log tree commit diff
path: root/src/librustc/middle
diff options
context:
space:
mode:
authorOliver Scherer <github35764891676564198441@oli-obk.de>2018-12-07 18:25:55 +0100
committerOliver Scherer <github35764891676564198441@oli-obk.de>2019-01-21 10:12:17 +0100
commit64afc6b51779c32b3d68a45b956b76b8899a135e (patch)
tree0c3b4e0344fe80d3c455a7e50f940cb3b720b538 /src/librustc/middle
parentb5f5a2715ed8685bc19fd589a23c7c658c2fe6bd (diff)
downloadrust-64afc6b51779c32b3d68a45b956b76b8899a135e.tar.gz
rust-64afc6b51779c32b3d68a45b956b76b8899a135e.zip
Differentiate between closure and function bodies
Diffstat (limited to 'src/librustc/middle')
-rw-r--r--src/librustc/middle/region.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/librustc/middle/region.rs b/src/librustc/middle/region.rs
index 819dd8aa7d5..31f91a1bae5 100644
--- a/src/librustc/middle/region.rs
+++ b/src/librustc/middle/region.rs
@@ -1268,8 +1268,8 @@ impl<'a, 'tcx> Visitor<'tcx> for RegionResolutionVisitor<'a, 'tcx> {
 
         // The body of the every fn is a root scope.
         self.cx.parent = self.cx.var_parent;
-        if let hir::BodyOwnerKind::Fn = self.tcx.hir().body_owner_kind(owner_id) {
-            self.visit_expr(&body.value);
+        if self.tcx.hir().body_owner_kind(owner_id).is_fn_or_closure() {
+            self.visit_expr(&body.value)
         } else {
             // Only functions have an outer terminating (drop) scope, while
             // temporaries in constant initializers may be 'static, but only