Stefan Behnel added the comment:

Ok, I think I figured it out now.

Essentially, Cython's functions type, despite starting with the same struct 
layout as PyCFunction, must not visibly inherit from PyCFunction. Consequently, 
inspect.isbuiltin() returns False, as does inspect.isfunction() - sadly.

With Yury's changes that are currently committed, this triggers the fallback 
that checks for the function-like signature, which in turn makes 
Signature.from_function() properly analyse the signature, including default 
arguments, annotations, etc.

So, nothing left to change on CPython side for this ticket. And thanks again 
for the help. Closing as fixed.

----------
status: open -> closed

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17159>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to