Support other repr layouts
Open
Nobody has claimed this yet.
enhancement
- Dominant language
- C++
- Stars
- 2.9k
- Forks
- 231
- Avg merge
- 19h 55m
- Merged PRs (30d)
- 67
Description
https://doc.rust-lang.org/reference/type-layout.html#representations
structs
-
repr(align) -
repr(packed) -
repr(C) -
repr(transparent)- single member only - certain combinations, e.g.
repr(C, packed(2))
unions
-
repr(align) -
repr(packed) -
repr(C) - certain combinations, e.g.
repr(C, packed(2))
enums
-
repr(align) - primitive reprs, e.g.
repr(u8) -
repr(transparent)- single variant only - certain combinations, e.g.
repr(C, u8)
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
Start with the Rust Reference type-layout representations section linked in the issue, then inspect how gccrs currently handles repr(align) and repr(packed). Map the missing struct, union, and enum representations and combinations to the checklist; done means the supported cases are implemented and the checklist can be updated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, rust
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100