diff options
Diffstat (limited to 'src/rustc/middle/kind.rs')
| -rw-r--r-- | src/rustc/middle/kind.rs | 18 |
1 files changed, 5 insertions, 13 deletions
diff --git a/src/rustc/middle/kind.rs b/src/rustc/middle/kind.rs index 9aff382775c..1da145cabc9 100644 --- a/src/rustc/middle/kind.rs +++ b/src/rustc/middle/kind.rs @@ -319,13 +319,13 @@ fn check_expr(e: @expr, cx: ctx, v: visit::vt<ctx>) { for exprs.each |expr| { maybe_copy(cx, *expr, None); } } expr_call(f, args, _) => { - let mut i = 0u; + let mut i = 0; for ty::ty_fn_args(ty::expr_ty(cx.tcx, f)).each |arg_t| { match ty::arg_mode(cx.tcx, *arg_t) { by_copy => maybe_copy(cx, args[i], None), - by_ref | by_val | by_mutbl_ref | by_move => () + by_ref | by_val | by_move => () } - i += 1u; + i += 1; } } expr_field(lhs, _, _) => { @@ -335,7 +335,7 @@ fn check_expr(e: @expr, cx: ctx, v: visit::vt<ctx>) { Some(ref mme) => { match ty::arg_mode(cx.tcx, mme.self_arg) { by_copy => maybe_copy(cx, lhs, None), - by_ref | by_val | by_mutbl_ref | by_move => () + by_ref | by_val | by_move => () } } _ => () @@ -465,18 +465,10 @@ fn check_imm_free_var(cx: ctx, def: def, sp: span) { cx.tcx.sess.span_err(sp, msg); } } - def_arg(_, mode) => { - match ty::resolved_mode(cx.tcx, mode) { - by_ref | by_val | by_move | by_copy => { /* ok */ } - by_mutbl_ref => { - cx.tcx.sess.span_err(sp, msg); - } - } - } def_upvar(_, def1, _, _) => { check_imm_free_var(cx, *def1, sp); } - def_binding(*) | def_self(*) => { /*ok*/ } + def_arg(*) | def_binding(*) | def_self(*) => { /*ok*/ } _ => { cx.tcx.sess.span_bug( sp, |
