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.

classification
Title: __text_signature__ parser silently drops arguments with certain unsupported default forms
Type: Stage:
Components: Extension Modules Versions:
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: Antony.Lee
Priority: normal Keywords:

Created on 2021-01-20 11:21 by Antony.Lee, last changed 2022-04-11 14:59 by admin.

Messages (1)
msg385335 - (view) Author: Antony Lee (Antony.Lee) * Date: 2021-01-20 11:21
Starting from the keyword-arguments example at https://docs.python.org/3/extending/extending.html#keyword-parameters-for-extension-functions, change the docstring of `parrot` to "parrot(voltage, state, action, type=1<<5)\n--\n\n" (yes, the documented default value for type does not correspond to the actual implementation, but that's irrelevant here).  Compiling the extension module and running pydoc on it yields the following parsed signature for `parrot`: `parrot(voltage, state, action)` i.e. the `type` parameter got silently dropped.  (Note that `1<<5` can legitimately occur, e.g. as a bitmask flag, especially given that one currently cannot refer to globals in __text_signature__ (https://bugs.python.org/issue37881).)
History
Date User Action Args
2022-04-11 14:59:40adminsetgithub: 87142
2021-01-20 11:21:25Antony.Leecreate