rust-lang / rust-lang/rust-clippy
lint structs/enums that need more space than strictly required due to padding
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 13.5k
- Forks
- 2.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 32
Description
In other languages (e.g. Go, C) static analysis tools can tell if the implicit padding is taking up more space than strictly needed.
A complication is that unless using #[repr(C)], the actual object layout is not publicly defined yet. May be a nice research topic to find out the various alignment settings per system.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No implementation files or tests are named. Start by researching Rust struct and enum layout, alignment, padding, and the distinction between #[repr(C)] and default representations; determine whether a useful lint can be sound across systems. Done means a defined scope and implementation plan for detecting excessive padding.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100