SIGN IN SIGN UP

Avoid `manual_assert_eq` for byte slice-like types (#17575)

`manual_assert_eq` can produce very large and unhelpful debug output
when either operand is a byte buffer. This change skips the lint when an
operand's dereference chain reaches `[u8]` or its type implements
`AsRef<[u8]>`. Types that also implement `AsRef<str>` remain linted,
preserving the current behavior for `String`.

The dereference traversal respects the compiler recursion limit so that
pathological `Deref` implementations cannot make linting hang or
overflow.

The existing UI test covers direct slices, standard byte-buffer
wrappers, custom `Deref` and `AsRef<[u8]>` types, pathological
dereference chains, and the existing non-byte and string diagnostics.

Fixes rust-lang/rust-clippy#17524

changelog: [`manual_assert_eq`]: avoid linting comparisons involving
byte slice-like types

## Testing

- `cargo fmt --all -- --check`
- `TESTNAME=manual_assert_eq cargo uitest`
- `cargo test`
L
llogiq committed
e57f468d8f079a7b50627a95121fd16fff8e5bfa
Committed by GitHub <noreply@github.com> on 8/22/2026, 11:13:38 AM