diff options
| author | Roman Stoliar <rizakrko@rambler.ru> | 2018-05-11 15:14:23 +0300 |
|---|---|---|
| committer | Roman Stoliar <rizakrko@rambler.ru> | 2018-05-11 15:14:23 +0300 |
| commit | 17c56d409ec43f8492b4ffd5117fcee6c4ce0a27 (patch) | |
| tree | dd584378885abb86d364a01c43c9cfd642da08a4 | |
| parent | d9b71d215677145bad8dd3ea8abb2114a3c9231e (diff) | |
| download | rust-17c56d409ec43f8492b4ffd5117fcee6c4ce0a27.tar.gz rust-17c56d409ec43f8492b4ffd5117fcee6c4ce0a27.zip | |
resolved merge conflict
| -rw-r--r-- | src/librustc_typeck/check/op.rs | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/src/librustc_typeck/check/op.rs b/src/librustc_typeck/check/op.rs index 629b02bdf13..23081b87d26 100644 --- a/src/librustc_typeck/check/op.rs +++ b/src/librustc_typeck/check/op.rs @@ -258,25 +258,25 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> { format!("cannot use `{}=` on type `{}`", op.node.as_str(), lhs_ty)); let mut suggested_deref = false; - if let TyRef(_, mut ty_mut) = lhs_ty.sty { + if let TyRef(_, mut rty, _) = lhs_ty.sty { if { !self.infcx.type_moves_by_default(self.param_env, - ty_mut.ty, + rty, lhs_expr.span) && - self.lookup_op_method(ty_mut.ty, - &[rhs_ty], - Op::Binary(op, is_assign)) + self.lookup_op_method(rty, + &[rhs_ty], + Op::Binary(op, is_assign)) .is_ok() } { if let Ok(lstring) = codemap.span_to_snippet(lhs_expr.span) { - while let TyRef(_, ty_mut_inner) = ty_mut.ty.sty{ - ty_mut = ty_mut_inner; + while let TyRef(_, rty_inner, _) = rty.sty { + rty = rty_inner; } let msg = &format!( "`{}=` can be used on '{}', you can \ dereference `{2}`: `*{2}`", op.node.as_str(), - ty_mut.ty, + rty, lstring ); err.help(msg); @@ -326,25 +326,25 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> { op.node.as_str(), lhs_ty); let mut suggested_deref = false; - if let TyRef(_, mut ty_mut) = lhs_ty.sty { + if let TyRef(_, mut rty, _) = lhs_ty.sty { if { !self.infcx.type_moves_by_default(self.param_env, - ty_mut.ty, + rty, lhs_expr.span) && - self.lookup_op_method(ty_mut.ty, - &[rhs_ty], - Op::Binary(op, is_assign)) + self.lookup_op_method(rty, + &[rhs_ty], + Op::Binary(op, is_assign)) .is_ok() } { if let Ok(lstring) = codemap.span_to_snippet(lhs_expr.span) { - while let TyRef(_, ty_mut_inner) = ty_mut.ty.sty{ - ty_mut = ty_mut_inner; + while let TyRef(_, rty_inner, _) = rty.sty { + rty = rty_inner; } let msg = &format!( "`{}` can be used on '{}', you can \ dereference `{2}`: `*{2}`", op.node.as_str(), - ty_mut.ty, + rty, lstring ); err.help(msg); @@ -478,7 +478,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> { err.note(&format!("unsigned values cannot be negated")); }, TyStr | TyNever | TyChar | TyTuple(_) | TyArray(_,_) => {}, - TyRef(_, ref lty) if lty.ty.sty == TyStr => {}, + TyRef(_, ref lty, _) if lty.sty == TyStr => {}, _ => { let missing_trait = match op { hir::UnNeg => "std::ops::Neg", |
