]> git.lizzy.rs Git - rust.git/commit
Explain move errors that occur due to method calls involving `self`
authorAaron Hill <aa1ronham@gmail.com>
Thu, 11 Jun 2020 17:48:46 +0000 (13:48 -0400)
committerAaron Hill <aa1ronham@gmail.com>
Fri, 26 Jun 2020 20:28:09 +0000 (16:28 -0400)
commitfa6a61c68930b390407d73e0ba71f2af5555f0f0
tree9d1ad6feeb72a826ca906a1a25a5271f5242a9b7
parent36ac08e2643dc5cc035031007a8a36f4c87d3543
Explain move errors that occur due to method calls involving `self`

This is a re-attempt of #72389 (which was reverted in #73594)
Instead of using `ExpnKind::Desugaring` to represent operators, this PR
checks the lang item directly.
38 files changed:
src/librustc_ast_lowering/expr.rs
src/librustc_hir/lang_items.rs
src/librustc_infer/infer/error_reporting/need_type_info.rs
src/librustc_middle/lint.rs
src/librustc_mir/borrow_check/diagnostics/conflict_errors.rs
src/librustc_mir/borrow_check/diagnostics/explain_borrow.rs
src/librustc_mir/borrow_check/diagnostics/mod.rs
src/librustc_mir/borrow_check/diagnostics/move_errors.rs
src/librustc_mir/borrow_check/diagnostics/mutability_errors.rs
src/librustc_mir/borrow_check/mod.rs
src/librustc_mir/transform/const_prop.rs
src/librustc_passes/lang_items.rs
src/librustc_span/hygiene.rs
src/librustc_span/lib.rs
src/test/ui/binop/binop-consume-args.stderr
src/test/ui/binop/binop-move-semantics.stderr
src/test/ui/borrowck/borrowck-unboxed-closures.stderr
src/test/ui/closure_context/issue-42065.stderr
src/test/ui/codemap_tests/tab_3.stderr
src/test/ui/issues/issue-12127.stderr
src/test/ui/issues/issue-33941.rs
src/test/ui/issues/issue-33941.stderr
src/test/ui/issues/issue-34721.stderr
src/test/ui/issues/issue-61108.stderr
src/test/ui/issues/issue-64559.stderr
src/test/ui/moves/move-fn-self-receiver.rs [new file with mode: 0644]
src/test/ui/moves/move-fn-self-receiver.stderr [new file with mode: 0644]
src/test/ui/moves/moves-based-on-type-access-to-field.stderr
src/test/ui/moves/moves-based-on-type-exprs.stderr
src/test/ui/once-cant-call-twice-on-heap.stderr
src/test/ui/unboxed-closures/unboxed-closures-infer-fnonce-call-twice.stderr
src/test/ui/unboxed-closures/unboxed-closures-infer-fnonce-move-call-twice.stderr
src/test/ui/unop-move-semantics.stderr
src/test/ui/unsized-locals/borrow-after-move.stderr
src/test/ui/unsized-locals/double-move.stderr
src/test/ui/use/use-after-move-self-based-on-type.stderr
src/test/ui/use/use-after-move-self.stderr
src/test/ui/walk-struct-literal-with.stderr