Auto merge of #9684 - kraktus:ref_option_ref, r=xFrednet

`ref_option_ref` do not lint when inner reference is mutable

changelog: FP: [`ref_option_ref`]: No longer lints if the inner reference is mutable

fix https://github.com/rust-lang/rust-clippy/issues/9682
This commit is contained in:
bors 2022-10-21 20:19:30 +00:00
commit b72e451310
2 changed files with 7 additions and 1 deletions

View file

@ -52,7 +52,8 @@ impl<'tcx> LateLintPass<'tcx> for RefOptionRef {
GenericArg::Type(inner_ty) => Some(inner_ty),
_ => None,
});
if let TyKind::Rptr(_, _) = inner_ty.kind;
if let TyKind::Rptr(_, ref inner_mut_ty) = inner_ty.kind;
if inner_mut_ty.mutbl == Mutability::Not;
then {
span_lint_and_sugg(

View file

@ -45,3 +45,8 @@ impl RefOptTrait for u32 {
fn main() {
let x: &Option<&u32> = &None;
}
fn issue9682(arg: &Option<&mut String>) {
// Should not lint, as the inner ref is mutable making it non `Copy`
println!("{arg:?}");
}