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 David.Edelsohn
Recipients Ayappan, BTaskaya, David.Edelsohn, Michael.Felt, T.Rex, amaury.forgeotdarc, belopolsky, eryksun, meador.inge, ronaldoussoren, sanket, vinay.sajip
Date 2020-08-10.19:52:49
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1597089169.96.0.104090522909.issue38628@roundup.psfhosted.org>
In-reply-to
Content
+Eryksun,Vinay

The patch to address array passing described in issue #22273 introduced regressions for other targets.  The 16 byte struct size is specific to x86 ABI and register passing convention.  I appreciate that the 16-32 byte size structure causes an abort for x64, but the patch shifted the problem to other targets that now produce wrong code.  The later comments in discussion thread for issue #22273 refer to patches that disable and reenable ctypes struct tests for ARMv7 and PPC, so this regression is not a surprise.

stgdict.c currently includes a target-specific work-around for small structures that is not restricted to the one target (x64) affected.

What's the best way to proceed?
History
Date User Action Args
2020-08-10 19:52:50David.Edelsohnsetrecipients: + David.Edelsohn, vinay.sajip, ronaldoussoren, amaury.forgeotdarc, belopolsky, meador.inge, eryksun, Michael.Felt, Ayappan, BTaskaya, sanket, T.Rex
2020-08-10 19:52:49David.Edelsohnsetmessageid: <1597089169.96.0.104090522909.issue38628@roundup.psfhosted.org>
2020-08-10 19:52:49David.Edelsohnlinkissue38628 messages
2020-08-10 19:52:49David.Edelsohncreate