It seems that the issue that originally caused compatibility issues was that `__debug__` statements were being optimized away, which was apparently desirable from coverage's point of view. It's not clear to me, but it seems that this may also impact what bytecode is generated when Python is run in optimized mode, because statements of the form `if __debug__:` will no longer be completely optimized out under `-O` (note that from what I can tell, `assert` statements are still optimized out under `-O`).
Does anyone have performance sensitive code that relies on `if __debug__` so that we can look at a benchmark? The issues with code coverage aside, if it's a significant issue, maybe it is worth considering a special case for `if __debug__` (I don't know enough about the implementation details to know how difficult or annoying this would be to maintain). Best, Paul On 7/5/19 5:51 PM, Ivan Pozdeev via Python-Dev wrote: > > "Correctness over speed" is Python's core value, so any syntax errors > must be reported. > > Is this optimization so important anyway? `if 0:' seems a niche use > case (yes, it's in site.py which is in every installation but the gain > there is pretty small) >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Python-Dev mailing list -- python-dev@python.org To unsubscribe send an email to python-dev-le...@python.org https://mail.python.org/mailman3/lists/python-dev.python.org/ Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/OK3JFHXPYM4HPGPPGKE6F7QTABUCCE43/