Why must bitfields sum to a multiple of a byte?

Era Scarecrow rtcvb32 at yahoo.com
Mon Jul 30 16:32:48 PDT 2012


On Monday, 30 July 2012 at 17:43:28 UTC, Ali Çehreli wrote:
> On 07/30/2012 10:15 AM, Andrej Mitrovic wrote:
>
> > import std.bitmanip;
> > struct Foo
> > {
> >      mixin(bitfields!(
> >          uint, "bits1", 32,
> >      ));
> > }
> >
> > D:\DMD\dmd2\windows\bin\..\..\src\phobos\std\bitmanip.d(76):
> Error:
> > shift by 32 is outside the range 0..31
> >
> > Should I file this?
>
> Yes, it's a bug.

  And likely one I'll be working on fairly soon. I've been 
concentrating on the BitArray, but I'll get more of the bitfields 
very very soon.


More information about the Digitalmars-d-learn mailing list