From 8f263dd0238ff85943a794bd3214ffa64b764a64 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Sun, 3 Mar 2013 08:50:20 -0800 Subject: [PATCH] rustc: remove some copies --- src/librustc/metadata/creader.rs | 2 +- src/librustc/metadata/loader.rs | 13 +++++++------ src/librustc/middle/astencode.rs | 2 +- src/librustc/middle/check_match.rs | 6 +++--- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/librustc/metadata/creader.rs b/src/librustc/metadata/creader.rs index c7c81d0b1c06..0776611342a3 100644 --- a/src/librustc/metadata/creader.rs +++ b/src/librustc/metadata/creader.rs @@ -65,7 +65,7 @@ struct cache_entry { metas: @~[@ast::meta_item] } -fn dump_crates(+crate_cache: @mut ~[cache_entry]) { +fn dump_crates(crate_cache: @mut ~[cache_entry]) { debug!("resolved crates:"); for crate_cache.each |entry| { debug!("cnum: %?", entry.cnum); diff --git a/src/librustc/metadata/loader.rs b/src/librustc/metadata/loader.rs index da7f3635c0e2..0fdea7abebf3 100644 --- a/src/librustc/metadata/loader.rs +++ b/src/librustc/metadata/loader.rs @@ -84,11 +84,12 @@ fn libname(cx: Context) -> (~str, ~str) { (str::from_slice(dll_prefix), str::from_slice(dll_suffix)) } -fn find_library_crate_aux(cx: Context, - (prefix, suffix): (~str, ~str), - filesearch: filesearch::FileSearch) -> - Option<(~str, @~[u8])> { - let crate_name = crate_name_from_metas(/*bad*/copy cx.metas); +fn find_library_crate_aux( + cx: Context, + (prefix, suffix): (~str, ~str), + filesearch: filesearch::FileSearch +) -> Option<(~str, @~[u8])> { + let crate_name = crate_name_from_metas(cx.metas); let prefix: ~str = prefix + *crate_name + ~"-"; let suffix: ~str = /*bad*/copy suffix; @@ -140,7 +141,7 @@ fn find_library_crate_aux(cx: Context, } } -pub fn crate_name_from_metas(+metas: &[@ast::meta_item]) -> @~str { +pub fn crate_name_from_metas(metas: &[@ast::meta_item]) -> @~str { let name_items = attr::find_meta_items_by_name(metas, ~"name"); match vec::last_opt(name_items) { Some(i) => { diff --git a/src/librustc/middle/astencode.rs b/src/librustc/middle/astencode.rs index 016daf3ac9f5..cf88a0eb9024 100644 --- a/src/librustc/middle/astencode.rs +++ b/src/librustc/middle/astencode.rs @@ -105,7 +105,7 @@ pub fn encode_inlined_item(ecx: @e::EncodeContext, pub fn decode_inlined_item(cdata: @cstore::crate_metadata, tcx: ty::ctxt, maps: Maps, - +path: ast_map::path, + path: ast_map::path, par_doc: ebml::Doc) -> Option { let dcx = @DecodeContext { diff --git a/src/librustc/middle/check_match.rs b/src/librustc/middle/check_match.rs index 7dd31374fc67..f43fd7586490 100644 --- a/src/librustc/middle/check_match.rs +++ b/src/librustc/middle/check_match.rs @@ -71,7 +71,7 @@ pub fn check_expr(cx: @MatchCheckCtxt, ex: @expr, &&s: (), v: visit::vt<()>) { arm.pats); } - check_arms(cx, (/*bad*/copy *arms)); + check_arms(cx, *arms); /* Check for exhaustiveness */ // Check for empty enum, because is_useful only works on inhabited // types. @@ -108,12 +108,12 @@ pub fn check_expr(cx: @MatchCheckCtxt, ex: @expr, &&s: (), v: visit::vt<()>) { } // Check for unreachable patterns -pub fn check_arms(cx: @MatchCheckCtxt, arms: ~[arm]) { +pub fn check_arms(cx: @MatchCheckCtxt, arms: &[arm]) { let mut seen = ~[]; for arms.each |arm| { for arm.pats.each |pat| { let v = ~[*pat]; - match is_useful(cx, copy seen, v) { + match is_useful(cx, &seen, v) { not_useful => { cx.tcx.sess.span_err(pat.span, ~"unreachable pattern"); }