Rollup merge of #116812 - rmehri01:missing_copy_implementations_non_exhaustive, r=petrochenkov
Disable missing_copy_implementations lint on non_exhaustive types Fixes #116766
This commit is contained in:
commit
0653d7eebf
2 changed files with 30 additions and 0 deletions
|
@ -677,6 +677,11 @@ impl<'tcx> LateLintPass<'tcx> for MissingCopyImplementations {
|
|||
if type_implements_negative_copy_modulo_regions(cx.tcx, ty, param_env) {
|
||||
return;
|
||||
}
|
||||
if def.is_variant_list_non_exhaustive()
|
||||
|| def.variants().iter().any(|variant| variant.is_field_list_non_exhaustive())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// We shouldn't recommend implementing `Copy` on stateful things,
|
||||
// such as iterators.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue