Skip to content

Commit c492a21

Browse files
committed
Remove some spurious copies that are identified by later patches
1 parent 7dfb865 commit c492a21

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

src/librustc/middle/trans/_match.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -674,8 +674,8 @@ pub fn enter_tup<'r>(bcx: block,
674674
let dummy = @ast::pat {id: 0, node: ast::pat_wild, span: dummy_sp()};
675675
do enter_match(bcx, dm, m, col, val) |p| {
676676
match p.node {
677-
ast::pat_tup(/*bad*/copy elts) => {
678-
Some(elts)
677+
ast::pat_tup(ref elts) => {
678+
Some(copy *elts)
679679
}
680680
_ => {
681681
assert_is_binding_or_wild(bcx, p);
@@ -702,7 +702,7 @@ pub fn enter_tuple_struct<'r>(bcx: block,
702702
let dummy = @ast::pat {id: 0, node: ast::pat_wild, span: dummy_sp()};
703703
do enter_match(bcx, dm, m, col, val) |p| {
704704
match p.node {
705-
ast::pat_enum(_, Some(/*bad*/copy elts)) => Some(elts),
705+
ast::pat_enum(_, Some(ref elts)) => Some(copy *elts),
706706
_ => {
707707
assert_is_binding_or_wild(bcx, p);
708708
Some(vec::from_elem(n_elts, dummy))

src/librustc/middle/trans/base.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1726,7 +1726,7 @@ pub fn copy_args_to_allocas(fcx: fn_ctxt,
17261726
let mut bcx = bcx;
17271727

17281728
match fcx.llself {
1729-
Some(copy slf) => {
1729+
Some(slf) => {
17301730
// We really should do this regardless of whether self is owned, but
17311731
// it doesn't work right with default method impls yet. (FIXME: #2794)
17321732
if slf.is_owned {
@@ -1801,7 +1801,7 @@ pub fn build_return_block(fcx: fn_ctxt) {
18011801
pub fn tie_up_header_blocks(fcx: fn_ctxt, lltop: BasicBlockRef) {
18021802
let _icx = fcx.insn_ctxt("tie_up_header_blocks");
18031803
match fcx.llloadenv {
1804-
Some(copy ll) => {
1804+
Some(ll) => {
18051805
Br(raw_block(fcx, false, fcx.llstaticallocas), ll);
18061806
Br(raw_block(fcx, false, ll), lltop);
18071807
}

src/librustc/middle/trans/type_use.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,8 @@ pub fn type_uses_for(ccx: @CrateContext, fn_id: def_id, n_tps: uint)
8585
}
8686

8787
if fn_id_loc.crate != local_crate {
88-
let Context { uses: @uses, _ } = cx;
89-
let uses = @uses; // mutability
88+
let Context { uses, _ } = cx;
89+
let uses = @copy *uses; // freeze
9090
ccx.type_use_cache.insert(fn_id, uses);
9191
return uses;
9292
}
@@ -173,8 +173,8 @@ pub fn type_uses_for(ccx: @CrateContext, fn_id: def_id, n_tps: uint)
173173
ccx.tcx.sess.parse_sess.interner)));
174174
}
175175
}
176-
let Context { uses: @uses, _ } = cx;
177-
let uses = @uses; // mutability
176+
let Context { uses, _ } = cx;
177+
let uses = @copy *uses; // freeze
178178
ccx.type_use_cache.insert(fn_id, uses);
179179
uses
180180
}

0 commit comments

Comments
 (0)