Commit Graph

15 Commits

Author SHA1 Message Date
Philipp Krones 43797675c2 Merge remote-tracking branch 'upstream/master' into rustup 2025-05-01 09:50:42 +02:00
Philipp Krones ff428d91c2 Merge commit '0621446356e20fd2ead13a6763bb936c95eb0cfa' into clippy-subtree-update 2025-04-22 18:24:43 +02:00
Samuel Tardieu cbfe1f5f58 Restrict the cases where ptr_eq triggers
`ptr_eq` was recently enhanced to lint on more cases of raw pointers
comparison:

- lint on all raw pointer comparison, by proposing to use
  `[core|std]::ptr::eq(lhs, rhs)` instead of `lhs == rhs`;
- removing one symetric `as usize` on each size if needed
- peeling any level of `as *[const|mut] _` if the remaining expression
  can still be coerced into the original one (i.e., is a ref or raw
  pointer to the same type as before)

The current change restricts the lint to the cases where at least one
level of symetric `as usize`, or any conversion to a raw pointer, could
be removed. For example, a direct comparaison of two raw pointers will
not trigger the lint anymore.
2025-04-08 18:16:41 +02:00
Samuel Tardieu db4bd96575 Ensure that peeling does not recurse into macros
We do not want to remove casts done inside macros. Also, when printing
the suggestion, take it from the same context as the origin expression
(the root context).
2025-04-03 01:38:53 +02:00
Philipp Krones c86216ebe7 Merge commit '1e5237f4a56ae958af7e5824343eacf737b67083' into clippy-subtree-update 2025-03-20 22:34:29 +01:00
Samuel Tardieu 336d34481e Apply ptr_eq lint only if cmp_null is not applicable
The `cmp_null` lint is more specialized than `ptr_eq`. The former should
take precedence, unless the user allows it.
2025-03-02 16:21:12 +01:00
Samuel Tardieu d7d0abd2ad Lint more cases of ptr::eq()
Also, do not strip conversions of a function pointer to a `*const`, as
no implicit conversion will take place.
2025-03-02 15:50:13 +01:00
Philipp Krones fe01c44995 Merge commit '9f9a822509e5ad3e560cbbe830d1013f936fca28' into clippy-subtree-update 2025-02-28 23:27:09 +01:00
Guillaume Gomez f666fd6417 Update UI tests 2025-02-15 13:38:16 +01:00
Philipp Krones cc61aeea54 Merge commit '080b587854a73f2a8cbaecff1884860a78e2ff37' into clippyup 2023-08-24 21:32:12 +02:00
Oli Scherer 3d88fae050 Update ui test crate 2023-08-11 14:02:28 +00:00
Philipp Krones a1b75c5108 Merge commit 'a3ed905928a03b6e433d0b429190bf3a847128b3' into clippyup 2023-04-23 13:28:56 +02:00
Oli Scherer def1705a27 Update to a compiletest-rs version that requires //@ for commands 2023-04-20 14:44:03 +00:00
Eduardo Broto cdb555f4fc Merge commit 'bf1c6f9871f430e284b17aa44059e0d0395e28a6' into clippyup 2020-10-23 22:16:59 +02:00
Bruno BELANYI 5bad9175fb New lint: Recommend using ptr::eq when possible
This is based almost entirely on the code available in the previous PR #4596.
2020-10-07 11:48:06 +02:00