[pypy-dev] pypy specific code flags DONT_IMPLY_DEDENT and SOURCE_IS_UTF8

Rocky Bernstein rb at dustyfeet.com
Mon Dec 16 05:24:33 EST 2019


Hi -

I have a cross-version Python bytecode disassembler xdis (
https://pypi.org/project/xdis/) and I notice that flags 0x0100 and 0x0200
(DONT_IMPLY_DEDENT and SOURCE_IS_UTF8 respectively) conflict in Pypy 3.6
with Python 3.6's  ITERABLE_COROUTINE and ASYNC_GENERATOR.

However in pypy3.6-7.2.0, inspect.CO_ITERABLE_COROUTINE and
inspect.CO_ASYNC_GENERATOR are defined to their Python 3.6 values.

So what should a disassembler do which it sees 0x0100 as a flag in a code
object? Does that reflect the PyPy meaning or the 3.6 meaning? And how can
one tell if the code has the other property?

Thanks.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20191216/515b2c7c/attachment.html>


More information about the pypy-dev mailing list