On Wed, 20 Oct 2021 02:55:52 +0200 Victor Stinner <vstin...@python.org> wrote: > > Debug build > ----------- > > When Python is built in debug mode, most compiler optimizations are > disabled. For example, Visual Studio disables inlining. Benchmarks must > not be run on a Python debug build, only on release build: using LTO and > PGO is recommended for reliable benchmarks. PGO helps the compiler to > decide if function should be inlined or not.
So what is the performance impact on debug builds? The numbers should be given in the PEP. > Rejected Ideas > ============== > > Keep macros, but fix some macro issues > -------------------------------------- > > Converting macros to functions is not needed to `remove the return > value`_: casting a macro return value to ``void`` also fix the issue. > For example, the ``PyList_SET_ITEM()`` macro was already fixed like > that. > > Macros are always "inlined" with any C compiler. > > The duplication of side effects can be worked around in the caller of > the macro. > > People using macros should be considered "consenting adults". People who > feel unsafe with macros should simply not use them. This says that the idea is rejected, but it does not say *why* it was rejected. Can you add that? Regards Antoine. _______________________________________________ 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/F57647TKEQLXX7JXAHUVCFWHUMU3SW2N/ Code of Conduct: http://python.org/psf/codeofconduct/