diff --git a/compiler/rustc_error_codes/src/error_codes/E0716.md b/compiler/rustc_error_codes/src/error_codes/E0716.md index c3546cd744f..b50c8b8e7ca 100644 --- a/compiler/rustc_error_codes/src/error_codes/E0716.md +++ b/compiler/rustc_error_codes/src/error_codes/E0716.md @@ -30,8 +30,9 @@ let q = p; Whenever a temporary is created, it is automatically dropped (freed) according to fixed rules. Ordinarily, the temporary is dropped at the end of the enclosing -statement -- in this case, after the `let`. This is illustrated in the example -above by showing that `tmp` would be freed as we exit the block. +statement -- in this case, after the outer `let` that assigns to `p`. This is +illustrated in the example above by showing that `tmp` would be freed as we exit +the block. To fix this problem, you need to create a local variable to store the value in rather than relying on a temporary. For example, you might change the original