From 9211883e545c4e7291c75b2cacc74d2ae3981f99 Mon Sep 17 00:00:00 2001 From: Michael Woerister Date: Fri, 13 Nov 2015 17:01:37 +0100 Subject: [PATCH] MIR: Support closure up-vars in LvalueTy::projection_ty() --- src/librustc_mir/tcx/mod.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/librustc_mir/tcx/mod.rs b/src/librustc_mir/tcx/mod.rs index 3b9d9228a16..65667f6420c 100644 --- a/src/librustc_mir/tcx/mod.rs +++ b/src/librustc_mir/tcx/mod.rs @@ -78,6 +78,8 @@ impl<'tcx> LvalueTy<'tcx> { adt_def.struct_variant().fields[field.index()].ty(tcx, substs), ty::TyTuple(ref tys) => tys[field.index()], + ty::TyClosure(_, ref closure_substs) => + closure_substs.upvar_tys[field.index()], _ => tcx.sess.bug(&format!("cannot get field of type: `{:?}`", ty)), },