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 Zuzu_Typ
Recipients Zuzu_Typ, josh.r
Date 2019-03-20.17:22:21
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1553102541.25.0.894475852347.issue36379@roundup.psfhosted.org>
In-reply-to
Content
Even though __ipow__ might be documented to take a third argument, if you build an inplace_pow function using the C-API, you can only pass one argument to it.

You can see that in the attached screenshot.

The example class shown in the screenshot can be found here: https://github.com/Zuzu-Typ/Python-C-API-extension-template

With the little template I wasn't able to reproduce the crash, but I did reassure myself that the third object is neither Py_None nor NULL, by adding "if (obj2 == Py_None || obj2 == NULL) return NULL;" before line 469 in "template.c", because calling __ipow__ still returned an example_class instance, instead of an error message, as it should if it returned NULL.
History
Date User Action Args
2019-03-20 17:22:21Zuzu_Typsetrecipients: + Zuzu_Typ, josh.r
2019-03-20 17:22:21Zuzu_Typsetmessageid: <1553102541.25.0.894475852347.issue36379@roundup.psfhosted.org>
2019-03-20 17:22:21Zuzu_Typlinkissue36379 messages
2019-03-20 17:22:21Zuzu_Typcreate