From 06408b4dd3801f8eba32ef775ad013b56627dcf9 Mon Sep 17 00:00:00 2001 From: Jorge Aparicio Date: Tue, 30 Dec 2014 20:37:02 -0500 Subject: [PATCH] rustc: unbox closures used in let bindings --- src/librustc/metadata/creader.rs | 2 +- src/librustc/metadata/encoder.rs | 2 +- src/librustc/middle/check_const.rs | 2 +- src/librustc/middle/check_match.rs | 2 +- src/librustc/middle/infer/region_inference/graphviz.rs | 2 +- src/librustc/middle/privacy.rs | 8 ++++---- src/librustc/middle/region.rs | 2 +- src/librustc/middle/ty.rs | 8 ++++---- 8 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/librustc/metadata/creader.rs b/src/librustc/metadata/creader.rs index e03d645aec3..5dac2bafaec 100644 --- a/src/librustc/metadata/creader.rs +++ b/src/librustc/metadata/creader.rs @@ -177,7 +177,7 @@ fn extract_crate_info(e: &Env, i: &ast::ViewItem) -> Option { } pub fn validate_crate_name(sess: Option<&Session>, s: &str, sp: Option) { - let err = |s: &str| { + let err = |&: s: &str| { match (sp, sess) { (_, None) => panic!("{}", s), (Some(sp), Some(sess)) => sess.span_err(sp, s), diff --git a/src/librustc/metadata/encoder.rs b/src/librustc/metadata/encoder.rs index 5d0532a6210..75fb6fb0cfa 100644 --- a/src/librustc/metadata/encoder.rs +++ b/src/librustc/metadata/encoder.rs @@ -1417,7 +1417,7 @@ fn encode_info_for_item(ecx: &EncodeContext, encode_parent_sort(rbml_w, 't'); let trait_item = &ms[i]; - let encode_trait_item = |rbml_w: &mut Encoder| { + let encode_trait_item = |&: rbml_w: &mut Encoder| { // If this is a static method, we've already // encoded this. if is_nonstatic_method { diff --git a/src/librustc/middle/check_const.rs b/src/librustc/middle/check_const.rs index e08dd64d4d4..6277656e03a 100644 --- a/src/librustc/middle/check_const.rs +++ b/src/librustc/middle/check_const.rs @@ -185,7 +185,7 @@ fn check_expr(v: &mut CheckCrateVisitor, e: &ast::Expr) -> bool { ast::ExprBlock(ref block) => { // Check all statements in the block for stmt in block.stmts.iter() { - let block_span_err = |span| + let block_span_err = |&: span| span_err!(v.tcx.sess, span, E0016, "blocks in constants are limited to items and \ tail expressions"); diff --git a/src/librustc/middle/check_match.rs b/src/librustc/middle/check_match.rs index 522e1d4d3b2..4c5d76a2c40 100644 --- a/src/librustc/middle/check_match.rs +++ b/src/librustc/middle/check_match.rs @@ -1012,7 +1012,7 @@ fn check_legality_of_move_bindings(cx: &MatchCheckCtxt, }) } - let check_move: |&Pat, Option<&Pat>| = |p, sub| { + let check_move = |&: p: &Pat, sub: Option<&Pat>| { // check legality of moving out of the enum // x @ Foo(..) is legal, but x @ Foo(y) isn't. diff --git a/src/librustc/middle/infer/region_inference/graphviz.rs b/src/librustc/middle/infer/region_inference/graphviz.rs index 0ca1a593ce7..8455ee3955b 100644 --- a/src/librustc/middle/infer/region_inference/graphviz.rs +++ b/src/librustc/middle/infer/region_inference/graphviz.rs @@ -136,7 +136,7 @@ impl<'a, 'tcx> ConstraintGraph<'a, 'tcx> { let mut i = 0; let mut node_ids = FnvHashMap::new(); { - let add_node = |node| { + let mut add_node = |&mut : node| { if let Vacant(e) = node_ids.entry(node) { e.set(i); i += 1; diff --git a/src/librustc/middle/privacy.rs b/src/librustc/middle/privacy.rs index edba2839f37..cfa0d419aa3 100644 --- a/src/librustc/middle/privacy.rs +++ b/src/librustc/middle/privacy.rs @@ -749,7 +749,7 @@ impl<'a, 'tcx> PrivacyVisitor<'a, 'tcx> { fn check_path(&mut self, span: Span, path_id: ast::NodeId, path: &ast::Path) { debug!("privacy - path {}", self.nodestr(path_id)); let orig_def = self.tcx.def_map.borrow()[path_id].clone(); - let ck = |tyname: &str| { + let ck = |&: tyname: &str| { let ck_public = |def: ast::DefId| { let name = token::get_ident(path.segments.last().unwrap().identifier); let origdid = orig_def.def_id(); @@ -921,7 +921,7 @@ impl<'a, 'tcx, 'v> Visitor<'v> for PrivacyVisitor<'a, 'tcx> { } } ast::ExprPath(..) => { - let guard = |did: ast::DefId| { + let guard = |&: did: ast::DefId| { let fields = ty::lookup_struct_fields(self.tcx, did); let any_priv = fields.iter().any(|f| { f.vis != ast::Public && ( @@ -1126,7 +1126,7 @@ impl<'a, 'tcx> SanePrivacyVisitor<'a, 'tcx> { /// later on down the road... fn check_sane_privacy(&self, item: &ast::Item) { let tcx = self.tcx; - let check_inherited = |sp: Span, vis: ast::Visibility, note: &str| { + let check_inherited = |&: sp: Span, vis: ast::Visibility, note: &str| { if vis != ast::Inherited { tcx.sess.span_err(sp, "unnecessary visibility qualifier"); if note.len() > 0 { @@ -1206,7 +1206,7 @@ impl<'a, 'tcx> SanePrivacyVisitor<'a, 'tcx> { tcx.sess.span_err(sp, "visibility has no effect inside functions"); } } - let check_struct = |def: &ast::StructDef| { + let check_struct = |&: def: &ast::StructDef| { for f in def.fields.iter() { match f.node.kind { ast::NamedField(_, p) => check_inherited(tcx, f.span, p), diff --git a/src/librustc/middle/region.rs b/src/librustc/middle/region.rs index 392724bc9a1..be89b32cdaa 100644 --- a/src/librustc/middle/region.rs +++ b/src/librustc/middle/region.rs @@ -488,7 +488,7 @@ fn resolve_expr(visitor: &mut RegionResolutionVisitor, expr: &ast::Expr) { { let region_maps = &mut visitor.region_maps; - let terminating = |id| { + let terminating = |&: id| { let scope = CodeExtent::from_node_id(id); region_maps.mark_as_terminating_scope(scope) }; diff --git a/src/librustc/middle/ty.rs b/src/librustc/middle/ty.rs index ba52266e52d..c06a8c1569c 100644 --- a/src/librustc/middle/ty.rs +++ b/src/librustc/middle/ty.rs @@ -6156,7 +6156,7 @@ pub fn hash_crate_independent<'tcx>(tcx: &ctxt<'tcx>, ty: Ty<'tcx>, svh: &Svh) - macro_rules! byte( ($b:expr) => { ($b as u8).hash(state) } ); macro_rules! hash( ($e:expr) => { $e.hash(state) } ); - let region = |state: &mut sip::SipState, r: Region| { + let region = |&: state: &mut sip::SipState, r: Region| { match r { ReStatic => {} ReLateBound(db, BrAnon(i)) => { @@ -6173,7 +6173,7 @@ pub fn hash_crate_independent<'tcx>(tcx: &ctxt<'tcx>, ty: Ty<'tcx>, svh: &Svh) - } } }; - let did = |state: &mut sip::SipState, did: DefId| { + let did = |&: state: &mut sip::SipState, did: DefId| { let h = if ast_util::is_local(did) { svh.clone() } else { @@ -6182,10 +6182,10 @@ pub fn hash_crate_independent<'tcx>(tcx: &ctxt<'tcx>, ty: Ty<'tcx>, svh: &Svh) - h.as_str().hash(state); did.node.hash(state); }; - let mt = |state: &mut sip::SipState, mt: mt| { + let mt = |&: state: &mut sip::SipState, mt: mt| { mt.mutbl.hash(state); }; - let fn_sig = |state: &mut sip::SipState, sig: &Binder>| { + let fn_sig = |&: state: &mut sip::SipState, sig: &Binder>| { let sig = anonymize_late_bound_regions(tcx, sig); for a in sig.inputs.iter() { helper(tcx, *a, svh, state); } if let ty::FnConverging(output) = sig.output {