Robbepop / modular-bitfield

Macro to generate bitfields for structs that allow for modular use of enums.
Apache License 2.0
155 stars 40 forks source link

[Feature Request] Better Note for (Size % 8) #99

Open JiveyGuy opened 10 months ago

JiveyGuy commented 10 months ago

I am working with a very large struct (1050 Bytes) and I am describing it bit by bit based on an ICD. I am adding sections of the struct at a time for speed's sake.

The problem of one enum specifier or B# being incorrect has come up very often and it is such a huge pain to debug. I am often greated by this message:

note: required by a bound in `CheckTotalSizeMultipleOf8`
   --> C:\Users\•••••\.cargo\registry\src\index.crates.io-6f17d22bba15001f\modular-bitfield-0.11.2\src\private\checks.rs:69:48
    |
67  | pub trait CheckTotalSizeMultipleOf8
    |           ------------------------- required by a bound in this trait
68  | where
69  |     <Self::Size as RenameSizeType>::CheckType: TotalSizeIsMultipleOfEightBits,
    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `CheckTotalSizeMultipleOf8`

Is there any way the message could include how much off from the next multiple of 8 the struct is, or other info to help figure out how to track down the incorrect field?