This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author meador.inge
Recipients Arfrever, amaury.forgeotdarc, belopolsky, meador.inge, theller
Date 2012-08-03.02:58:45
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1343962726.52.0.657534288819.issue15459@psf.upfronthosting.co.za>
In-reply-to
Content
OK, I finally had some time to look at this.  The attached patch does fix the issue.  However, it has a nasty side effect in that the encoded bitfield size stays with the field member object:

   >>> class SubByte(c_ubyte): pass
   ... 
   >>> class A(Structure):
   ...    _fields_ = [("x", SubByte, 5)]
   ... 
   >>> sizeof(A().x)
   327680

Before the patch things look like:

   >>> class SubByte(c_ubyte): pass
   ... 
   >>> class A(Structure):
   ...    _fields_ = [("x", SubByte, 5)]
   ... 
   >>> sizeof(A().x)
   1

Leaking the internal bitfield size encoding seems like a deal breaker to me.
History
Date User Action Args
2012-08-03 02:58:46meador.ingesetrecipients: + meador.inge, theller, amaury.forgeotdarc, belopolsky, Arfrever
2012-08-03 02:58:46meador.ingesetmessageid: <1343962726.52.0.657534288819.issue15459@psf.upfronthosting.co.za>
2012-08-03 02:58:45meador.ingelinkissue15459 messages
2012-08-03 02:58:45meador.ingecreate