diff options
| author | Eric Holk <eholk@mozilla.com> | 2011-07-19 14:31:55 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2011-07-21 11:51:22 -0700 |
| commit | d79afd7916dc2b5353666c301b93c09fdba29134 (patch) | |
| tree | 90c8c310a21a8126be1cd1eecaedcf3ddfd636e1 /src/comp | |
| parent | 3ae4dcd41e72d197e3882835253745f79588b04a (diff) | |
| download | rust-d79afd7916dc2b5353666c301b93c09fdba29134.tar.gz rust-d79afd7916dc2b5353666c301b93c09fdba29134.zip | |
Improving move semantics for channel operations.
This lets us un-XFAIL task-comm-10.rs.
Diffstat (limited to 'src/comp')
| -rw-r--r-- | src/comp/middle/trans_comm.rs | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/comp/middle/trans_comm.rs b/src/comp/middle/trans_comm.rs index 3ea1f588c95..aca28347cac 100644 --- a/src/comp/middle/trans_comm.rs +++ b/src/comp/middle/trans_comm.rs @@ -247,10 +247,11 @@ fn recv_val(&@block_ctxt cx, ValueRef to, &@ast::expr from, &ty::t unit_ty, bcx.build.Call(bcx.fcx.lcx.ccx.upcalls.recv, ~[bcx.fcx.lltaskptr, lldataptr, llportptr]); auto data_load = load_if_immediate(bcx, to, unit_ty); - auto cp = copy_val(bcx, action, to, data_load, unit_ty); - bcx = cp.bcx; - // TODO: Any cleanup need to be done here? - ret rslt(bcx, to); + //auto cp = copy_val(bcx, action, to, data_load, unit_ty); + //bcx = cp.bcx; + + add_clean_temp(cx, data_load, unit_ty); + ret rslt(bcx, data_load); } // Does a deep copy of a value. This is needed for passing arguments to child |
