diff options
| author | bors <bors@rust-lang.org> | 2022-04-29 20:00:47 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-04-29 20:00:47 +0000 |
| commit | a707f401074bc769bab4efb2bfdde7f6c5a4068d (patch) | |
| tree | 8146935aee88552868c76b369281cf69fc71b74a /compiler/rustc_trait_selection/src | |
| parent | 1c8966e5e9dc099b55206f34af81242d03bdb413 (diff) | |
| parent | 67ce547f474fbe34e8aafe4bfc284c3856673744 (diff) | |
Auto merge of #95819 - oli-obk:mir_can't_hold_all_these_lifetimes, r=estebank
Enforce Copy bounds for repeat elements while considering lifetimes fixes https://github.com/rust-lang/rust/issues/95477 this is a breaking change in order to fix a soundness bug. Before this PR we only checked whether the repeat element type had an `impl Copy`, but not whether that impl also had the appropriate lifetimes. E.g. if the impl was for `YourType<'static>` and not a general `'a`, then copying any type other than a `'static` one should have been rejected, but wasn't. r? `@lcnr`
Diffstat (limited to 'compiler/rustc_trait_selection/src')
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/error_reporting/suggestions.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/rustc_trait_selection/src/traits/error_reporting/suggestions.rs b/compiler/rustc_trait_selection/src/traits/error_reporting/suggestions.rs index 0c1ca65c48f..187df6f7de0 100644 --- a/compiler/rustc_trait_selection/src/traits/error_reporting/suggestions.rs +++ b/compiler/rustc_trait_selection/src/traits/error_reporting/suggestions.rs @@ -2227,7 +2227,7 @@ impl<'a, 'tcx> InferCtxtExt<'tcx> for InferCtxt<'a, 'tcx> { } ObligationCauseCode::RepeatElementCopy { is_const_fn } => { err.note( - "the `Copy` trait is required because the repeated element will be copied", + "the `Copy` trait is required because this value will be copied for each element of the array", ); if is_const_fn { |
