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 Oren Milman
Recipients Oren Milman
Date 2017-09-10.17:37:43
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1505065063.57.0.46720585304.issue31411@psf.upfronthosting.co.za>
In-reply-to
Content
The following code causes warn_explicit() (in Python/_warnings.c) to raise a
SystemError:

import warnings
warnings.filterwarnings('once')
warnings.onceregistry = None
warnings.warn_explicit(message='foo', category=Warning, filename='bar',
                       lineno=1, registry=None)


this is because warn_explicit() assumes that warnings.onceregistry is a dict,
and passes it to update_registry(), which passes it to already_warned(), which
eventually passes it to _PyDict_SetItemId(), which raises the SystemError.
History
Date User Action Args
2017-09-10 17:37:43Oren Milmansetrecipients: + Oren Milman
2017-09-10 17:37:43Oren Milmansetmessageid: <1505065063.57.0.46720585304.issue31411@psf.upfronthosting.co.za>
2017-09-10 17:37:43Oren Milmanlinkissue31411 messages
2017-09-10 17:37:43Oren Milmancreate