From b0e66a6f3b4a10f67f0b1df8a78fe3db79db5045 Mon Sep 17 00:00:00 2001 From: Niko Matsakis Date: Sun, 17 Jun 2012 16:37:49 -0700 Subject: [PATCH] Undo workaround for #2633 since it is fixed. This reverts commit a14df270dc18cd13965e741967eaeac443e20466. Conflicts: src/rustc/middle/trans/base.rs --- src/rustc/middle/trans/base.rs | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/rustc/middle/trans/base.rs b/src/rustc/middle/trans/base.rs index b19dcf762dac..69280657a0d0 100644 --- a/src/rustc/middle/trans/base.rs +++ b/src/rustc/middle/trans/base.rs @@ -1424,11 +1424,7 @@ fn copy_val_no_check(bcx: block, action: copy_action, dst: ValueRef, // FIXME: We always zero out the source. Ideally we would detect the // case where a variable is always deinitialized by block exit and thus // doesn't need to be dropped. (Issue #839) -// n.b. + argument mode on cx is a workaround for #2633. Note that cx isn't -// passed by value by default because currently, a newtype-like enum whose -// representation is a box isn't considered to be boxed (and thus, not -// considered immediate). -fn move_val(+cx: block, action: copy_action, dst: ValueRef, +fn move_val(cx: block, action: copy_action, dst: ValueRef, src: lval_result, t: ty::t) -> block { let _icx = cx.insn_ctxt("move_val"); let mut src_val = src.val;