Skip to content

Conversation

Alexendoo
Copy link
Member

changelog: [needless_borrowed_reference]: Lint struct and tuple patterns, and patterns containing _

Now lints patterns like

&(ref a, ref b)
&Tuple(ref a, ref b)
&Struct { ref a, ref b }

&(ref a, _)

@rust-highfive
Copy link

r? @xFrednet

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties label Nov 15, 2022
@xFrednet
Copy link
Contributor

Looks good to me, thank you for the update. The code was nicely readable and helped with the review!

@bors r+

@bors
Copy link
Contributor

bors commented Nov 18, 2022

📌 Commit f75fc85 has been approved by xFrednet

It is now in the queue for this repository.

@bors
Copy link
Contributor

bors commented Nov 18, 2022

⌛ Testing commit f75fc85 with merge d019fd9...

@bors
Copy link
Contributor

bors commented Nov 18, 2022

☀️ Test successful - checks-action_dev_test, checks-action_remark_test, checks-action_test
Approved by: xFrednet
Pushing d019fd9 to master...

@bors bors merged commit d019fd9 into rust-lang:master Nov 18, 2022
jimblandy added a commit to jimblandy/naga that referenced this pull request Jan 31, 2023
In Clippy 1.67, the `needless_borrowed_reference` lint [was enhanced]
to look into struct and tuple patterns, so that a line like this:

    for &(ref module, ref info) in inputs.iter()

where `inputs.iter()` is yielding `&(Module, ModuleInfo)` pairs,
elicits a warning. Clippy suggests, instead:

    for (module, info) in inputs.iter()

but this is at odds with Naga's preference that `match` patterns
should have the same type as the expression being matched, for which
we have enabled the `pattern_type_mismatch` lint since
9e5cc4c (2021-3-12).

[was enhanced]: rust-lang/rust-clippy#9855
teoxoy pushed a commit to gfx-rs/naga that referenced this pull request Jan 31, 2023
In Clippy 1.67, the `needless_borrowed_reference` lint [was enhanced]
to look into struct and tuple patterns, so that a line like this:

    for &(ref module, ref info) in inputs.iter()

where `inputs.iter()` is yielding `&(Module, ModuleInfo)` pairs,
elicits a warning. Clippy suggests, instead:

    for (module, info) in inputs.iter()

but this is at odds with Naga's preference that `match` patterns
should have the same type as the expression being matched, for which
we have enabled the `pattern_type_mismatch` lint since
9e5cc4c (2021-3-12).

[was enhanced]: rust-lang/rust-clippy#9855
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants