diff options
| author | bors <bors@rust-lang.org> | 2025-03-18 05:58:46 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2025-03-18 05:58:46 +0000 |
| commit | 259fdb521200c9abba547302fc2c826479ef26b2 (patch) | |
| tree | e7773ad5d080c9b76c65061e67ff5218ba0883cc /compiler/rustc_error_codes | |
| parent | 493c38ba371929579fe136df26eccd9516347c7a (diff) | |
| parent | 597500db8b71fef45474acb0e9cd2cc4ed894043 (diff) | |
| download | rust-259fdb521200c9abba547302fc2c826479ef26b2.tar.gz rust-259fdb521200c9abba547302fc2c826479ef26b2.zip | |
Auto merge of #138630 - matthiaskrgr:rollup-kk1gogr, r=matthiaskrgr
Rollup of 7 pull requests Successful merges: - #138384 (Move `hir::Item::ident` into `hir::ItemKind`.) - #138508 (Clarify "owned data" in E0515.md) - #138531 (Store test diffs in job summaries and improve analysis formatting) - #138533 (Only use `DIST_TRY_BUILD` for try jobs that were not selected explicitly) - #138556 (Fix ICE: attempted to remap an already remapped filename) - #138608 (rustc_target: Add target feature constraints for LoongArch) - #138619 (Flatten `if`s in `rustc_codegen_ssa`) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_error_codes')
| -rw-r--r-- | compiler/rustc_error_codes/src/error_codes/E0515.md | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/rustc_error_codes/src/error_codes/E0515.md b/compiler/rustc_error_codes/src/error_codes/E0515.md index 0f4fbf67223..87bbe4aea70 100644 --- a/compiler/rustc_error_codes/src/error_codes/E0515.md +++ b/compiler/rustc_error_codes/src/error_codes/E0515.md @@ -17,10 +17,13 @@ fn get_dangling_iterator<'a>() -> Iter<'a, i32> { } ``` -Local variables, function parameters and temporaries are all dropped before the -end of the function body. So a reference to them cannot be returned. +Local variables, function parameters and temporaries are all dropped before +the end of the function body. A returned reference (or struct containing a +reference) to such a dropped value would immediately be invalid. Therefore +it is not allowed to return such a reference. -Consider returning an owned value instead: +Consider returning a value that takes ownership of local data instead of +referencing it: ``` use std::vec::IntoIter; |
