serde-rs / serde

Serialization framework for Rust
https://serde.rs/
Apache License 2.0
8.82k stars 748 forks source link

Fix new dead_code warning in tuple struct and tuple variant remote defs #2671

Closed dtolnay closed 6 months ago

dtolnay commented 6 months ago

Warnings are new in nightly-2024-01-06 due to https://github.com/rust-lang/rust/pull/118297.

warning: field `0` is never read
   --> test_suite/tests/test_remote.rs:143:24
    |
143 | struct PrimitivePubDef(u8);
    |        --------------- ^^
    |        |
    |        field in this struct
    |
    = note: `#[warn(dead_code)]` on by default
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
    |
143 | struct PrimitivePubDef(());
    |                        ~~

warning: field `0` is never read
   --> test_suite/tests/test_remote.rs:162:20
    |
162 | struct TuplePubDef(u8, #[serde(with = "UnitDef")] remote::Unit);
    |        ----------- ^^
    |        |
    |        field in this struct
    |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
    |
162 | struct TuplePubDef((), #[serde(with = "UnitDef")] remote::Unit);
    |                    ~~

warning: field `0` is never read
   --> test_suite/tests/test_remote.rs:200:13
    |
200 |     Variant(u8),
    |     ------- ^^
    |     |
    |     field in this variant
    |
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
    |
200 |     Variant(()),
    |             ~~

error: field `0` is never read
   --> test_suite/tests/test_gen.rs:390:23
    |
390 |     struct StrDef<'a>(&'a str);
    |            ------     ^^^^^^^
    |            |
    |            field in this struct
    |
note: the lint level is defined here
   --> test_suite/tests/test_gen.rs:5:9
    |
5   | #![deny(warnings)]
    |         ^^^^^^^^
    = note: `#[deny(dead_code)]` implied by `#[deny(warnings)]`
help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
    |
390 |     struct StrDef<'a>(());
    |                       ~~