diff --git a/src/eval_context.rs b/src/eval_context.rs
index baa3ec7dc42beed73383d73b80aac8756e59b349..da25b1b21765d2e03102c5691a2cddd11e958279 100644
--- a/src/eval_context.rs
+++ b/src/eval_context.rs
@@ -202,7 +202,7 @@ impl<'a, 'tcx> LayoutOf<Ty<'tcx>> for &'a EvalContext<'a, 'tcx> {
     type TyLayout = EvalResult<'tcx, TyLayout<'tcx>>;
 
     fn layout_of(self, ty: Ty<'tcx>) -> Self::TyLayout {
-        (self.tcx, ::rustc::ty::ParamEnv::empty(Reveal::All)).layout_of(ty)
+        self.tcx.layout_of(::rustc::ty::ParamEnv::empty(Reveal::All).and(ty))
             .map_err(|layout| EvalError::Layout(layout).into())
     }
 }