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-16.15:20:26
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1597591227.09.0.246346146346.issue38628@roundup.psfhosted.org>
In-reply-to
Content
Yes, it doesn't appear that it will be solved in libffi.  I don't fully understand the need for the work-around because it should gracefully overflow to the stack.  I can't tell if the issue is a problem with arguments passed by value that need to be passed partially in registers and partially in the stack.

But if the work-around is necessary, it is target- and ABI-dependent: the number of arguments passed in registers is target- and ABI-dependent.  Implementing a work-around solely based on x64 ABI is not correct.  The ctypes stgdict.c code needs to define MAX_STRUCT_SIZE based on the target, at least for the targets that experience the problem.
History
Date User Action Args
2020-08-16 15:20:27David.Edelsohnsetrecipients: + David.Edelsohn, vinay.sajip, ronaldoussoren, amaury.forgeotdarc, belopolsky, meador.inge, eryksun, Michael.Felt, Ayappan, BTaskaya, sanket, T.Rex
2020-08-16 15:20:27David.Edelsohnsetmessageid: <1597591227.09.0.246346146346.issue38628@roundup.psfhosted.org>
2020-08-16 15:20:27David.Edelsohnlinkissue38628 messages
2020-08-16 15:20:26David.Edelsohncreate