Skip to content

type alias Plus2 is never used #127911

@IceTDrinker

Description

@IceTDrinker

Summary

Some type is flagged by Clippy as never used, though it is used in an internal trait implementation

Lint Name

dead_code

Reproducer

I tried this code:

clone zama-ai/concrete-fft@aeb75d4

run pre commit checks, runs a clippy check:
make pcc

faulty clippy invokation:

RUSTFLAGS="-C target-cpu=native" cargo "+nightly-2024-07-18" clippy --all-targets \
        --features=serde -- --no-deps -D warnings

I saw this happen:

error: type alias `Plus2` is never used
  --> src/nat.rs:26:10
   |
26 | pub type Plus2<N> = Successor<Plus1<N>>;
   |          ^^^^^
   |
   = note: `-D dead-code` implied by `-D warnings`
   = help: to override `-D warnings` add `#[allow(dead_code)]`

error: type alias `Plus3` is never used
  --> src/nat.rs:27:10
   |
27 | pub type Plus3<N> = Successor<Plus2<N>>;
   |          ^^^^^

error: type alias `Plus4` is never used
  --> src/nat.rs:28:10
   |
28 | pub type Plus4<N> = Successor<Plus3<N>>;
   |          ^^^^^

error: could not compile `concrete-fft` (lib) due to 3 previous errors

I expected to see this happen:

No warning/error for these types as they are used in e.g. https://github.com/zama-ai/concrete-fft/blob/aeb75d4b7c5cc6b3031bf5b9f4730961f3132fe5/src/dit16.rs#L823

Version

rustc 1.81.0-nightly (fcc325f1b 2024-07-17)
binary: rustc
commit-hash: fcc325f1bc477975e2ce5ba534fe4c77ff8a8536
commit-date: 2024-07-17
host: x86_64-unknown-linux-gnu
release: 1.81.0-nightly
LLVM version: 18.1.7

Additional Labels

No response

Metadata

Metadata

Assignees

Labels

A-lintsArea: Lints (warnings about flaws in source code) such as unused_mut.C-bugCategory: This is a bug.E-needs-mcveCall for participation: This issue has a repro, but needs a Minimal Complete and Verifiable ExampleL-dead_codeLint: dead_codeT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions