diff options
| author | Oliver Scherer <github35764891676564198441@oli-obk.de> | 2018-12-07 18:25:55 +0100 |
|---|---|---|
| committer | Oliver Scherer <github35764891676564198441@oli-obk.de> | 2019-01-21 10:12:17 +0100 |
| commit | 64afc6b51779c32b3d68a45b956b76b8899a135e (patch) | |
| tree | 0c3b4e0344fe80d3c455a7e50f940cb3b720b538 /src/librustc/middle | |
| parent | b5f5a2715ed8685bc19fd589a23c7c658c2fe6bd (diff) | |
| download | rust-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.rs | 4 |
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 |
