Rollup merge of #64330 - Mark-Simulacrum:clarify-E0507, r=GuillaumeGomez

Clarify E0507 to note Fn/FnMut relationship to borrowing

Fixes #37904.
This commit is contained in:
Mazdak Farrokhzad 2019-09-10 17:19:28 +02:00 committed by GitHub
commit 35c24b4019
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1646,7 +1646,14 @@ fn print_fancy_ref(fancy_ref: &FancyNum){
"##,
E0507: r##"
You tried to move out of a value which was borrowed. Erroneous code example:
You tried to move out of a value which was borrowed.
This can also happen when using a type implementing `Fn` or `FnMut`, as neither
allows moving out of them (they usually represent closures which can be called
more than once). Much of the text following applies equally well to non-`FnOnce`
closure bodies.
Erroneous code example:
```compile_fail,E0507
use std::cell::RefCell;