@@ -243,8 +243,8 @@ pub fn is_useful(cx: @MatchCheckCtxt, m: &matrix, v: &[@pat]) -> useful {
243
243
}
244
244
ty::ty_unboxed_vec(*) | ty::ty_evec(*) => {
245
245
let max_len = do m.foldr(0) |r, max_len| {
246
- match /*bad*/copy r[0].node {
247
- pat_vec(before, _, after) => {
246
+ match r[0].node {
247
+ pat_vec(ref before, _, ref after) => {
248
248
uint::max(before.len() + after.len(), max_len)
249
249
}
250
250
_ => max_len
@@ -299,7 +299,7 @@ pub fn is_useful_specialized(cx: @MatchCheckCtxt,
299
299
300
300
pub fn pat_ctor_id(cx: @MatchCheckCtxt, p: @pat) -> Option<ctor> {
301
301
let pat = raw_pat(p);
302
- match /*bad*/copy pat.node {
302
+ match pat.node {
303
303
pat_wild => { None }
304
304
pat_ident(_, _, _) | pat_enum(_, _) => {
305
305
match cx.tcx.def_map.find(&pat.id) {
@@ -324,7 +324,7 @@ pub fn pat_ctor_id(cx: @MatchCheckCtxt, p: @pat) -> Option<ctor> {
324
324
pat_box(_) | pat_uniq(_) | pat_tup(_) | pat_region(*) => {
325
325
Some(single)
326
326
}
327
- pat_vec(before, slice, after) => {
327
+ pat_vec(ref before, slice, ref after) => {
328
328
match slice {
329
329
Some(_) => None,
330
330
None => Some(vec(before.len() + after.len()))
@@ -448,8 +448,8 @@ pub fn missing_ctor(cx: @MatchCheckCtxt,
448
448
}
449
449
450
450
pub fn ctor_arity(cx: @MatchCheckCtxt, ctor: ctor, ty: ty::t) -> uint {
451
- match /*bad*/copy ty::get(ty).sty {
452
- ty::ty_tup(fs) => fs.len(),
451
+ match ty::get(ty).sty {
452
+ ty::ty_tup(ref fs) => fs.len(),
453
453
ty::ty_box(_) | ty::ty_uniq(_) | ty::ty_rptr(*) => 1u,
454
454
ty::ty_enum(eid, _) => {
455
455
let id = match ctor { variant(id) => id,
@@ -704,7 +704,7 @@ pub fn is_refutable(cx: @MatchCheckCtxt, pat: &pat) -> bool {
704
704
_ => ()
705
705
}
706
706
707
- match /*bad*/copy pat.node {
707
+ match pat.node {
708
708
pat_box(sub) | pat_uniq(sub) | pat_region(sub) |
709
709
pat_ident(_, _, Some(sub)) => {
710
710
is_refutable(cx, sub)
@@ -715,13 +715,13 @@ pub fn is_refutable(cx: @MatchCheckCtxt, pat: &pat) -> bool {
715
715
false
716
716
}
717
717
pat_lit(_) | pat_range(_, _) => { true }
718
- pat_struct(_, fields, _) => {
718
+ pat_struct(_, ref fields, _) => {
719
719
fields.any(|f| is_refutable(cx, f.pat))
720
720
}
721
- pat_tup(elts) => {
721
+ pat_tup(ref elts) => {
722
722
elts.any(|elt| is_refutable(cx, *elt))
723
723
}
724
- pat_enum(_, Some(args)) => {
724
+ pat_enum(_, Some(ref args)) => {
725
725
args.any(|a| is_refutable(cx, *a))
726
726
}
727
727
pat_enum(_,_) => { false }
0 commit comments