]> git.ipfire.org Git - thirdparty/Python/cpython.git/commit
gh-90928: Statically Initialize the Keywords Tuple in Clinic-Generated Code (gh-95860)
authorEric Snow <ericsnowcurrently@gmail.com>
Thu, 11 Aug 2022 21:25:49 +0000 (15:25 -0600)
committerGitHub <noreply@github.com>
Thu, 11 Aug 2022 21:25:49 +0000 (15:25 -0600)
commit6f6a4e6cc5cd76af4a53ffbb62b686142646ac9a
treeaeb6de5e55af7bb77acaeccf6d672f725c81aeed
parentbdb2cf8e913c041f26e8976abe58414819b3e8ff
gh-90928: Statically Initialize the Keywords Tuple in Clinic-Generated Code (gh-95860)

We only statically initialize for core code and builtin modules.  Extension modules still create
the tuple at runtime.  We'll solve that part of interpreter isolation separately.

This change includes generated code. The non-generated changes are in:

* Tools/clinic/clinic.py
* Python/getargs.c
* Include/cpython/modsupport.h
* Makefile.pre.in (re-generate global strings after running clinic)
* very minor tweaks to Modules/_codecsmodule.c and Python/Python-tokenize.c

All other changes are generated code (clinic, global strings).
127 files changed:
Include/cpython/modsupport.h
Include/internal/pycore_global_strings.h
Include/internal/pycore_runtime_init_generated.h
Lib/test/clinic.test
Makefile.pre.in
Modules/_blake2/clinic/blake2b_impl.c.h
Modules/_blake2/clinic/blake2s_impl.c.h
Modules/_codecsmodule.c
Modules/_io/clinic/_iomodule.c.h
Modules/_io/clinic/bufferedio.c.h
Modules/_io/clinic/bytesio.c.h
Modules/_io/clinic/fileio.c.h
Modules/_io/clinic/iobase.c.h
Modules/_io/clinic/stringio.c.h
Modules/_io/clinic/textio.c.h
Modules/_io/clinic/winconsoleio.c.h
Modules/_multiprocessing/clinic/multiprocessing.c.h
Modules/_multiprocessing/clinic/posixshmem.c.h
Modules/_multiprocessing/clinic/semaphore.c.h
Modules/_randommodule.c
Modules/_sha3/clinic/sha3module.c.h
Modules/_sqlite/clinic/blob.c.h
Modules/_sqlite/clinic/connection.c.h
Modules/_sqlite/clinic/cursor.c.h
Modules/_sqlite/clinic/module.c.h
Modules/_sqlite/clinic/row.c.h
Modules/_sre/clinic/sre.c.h
Modules/_ssl/clinic/cert.c.h
Modules/_testcapi/clinic/vectorcall.c.h
Modules/cjkcodecs/clinic/multibytecodec.c.h
Modules/clinic/_abc.c.h
Modules/clinic/_asynciomodule.c.h
Modules/clinic/_bisectmodule.c.h
Modules/clinic/_bz2module.c.h
Modules/clinic/_codecsmodule.c.h
Modules/clinic/_collectionsmodule.c.h
Modules/clinic/_contextvarsmodule.c.h
Modules/clinic/_cryptmodule.c.h
Modules/clinic/_csv.c.h
Modules/clinic/_curses_panel.c.h
Modules/clinic/_cursesmodule.c.h
Modules/clinic/_datetimemodule.c.h
Modules/clinic/_dbmmodule.c.h
Modules/clinic/_elementtree.c.h
Modules/clinic/_gdbmmodule.c.h
Modules/clinic/_hashopenssl.c.h
Modules/clinic/_heapqmodule.c.h
Modules/clinic/_localemodule.c.h
Modules/clinic/_lsprof.c.h
Modules/clinic/_lzmamodule.c.h
Modules/clinic/_opcode.c.h
Modules/clinic/_operator.c.h
Modules/clinic/_pickle.c.h
Modules/clinic/_queuemodule.c.h
Modules/clinic/_randommodule.c.h
Modules/clinic/_ssl.c.h
Modules/clinic/_statisticsmodule.c.h
Modules/clinic/_struct.c.h
Modules/clinic/_testmultiphase.c.h
Modules/clinic/_tkinter.c.h
Modules/clinic/_tracemalloc.c.h
Modules/clinic/_typingmodule.c.h
Modules/clinic/_weakref.c.h
Modules/clinic/_winapi.c.h
Modules/clinic/arraymodule.c.h
Modules/clinic/audioop.c.h
Modules/clinic/binascii.c.h
Modules/clinic/cmathmodule.c.h
Modules/clinic/fcntlmodule.c.h
Modules/clinic/gcmodule.c.h
Modules/clinic/grpmodule.c.h
Modules/clinic/itertoolsmodule.c.h
Modules/clinic/mathmodule.c.h
Modules/clinic/md5module.c.h
Modules/clinic/overlapped.c.h
Modules/clinic/posixmodule.c.h
Modules/clinic/pwdmodule.c.h
Modules/clinic/pyexpat.c.h
Modules/clinic/readline.c.h
Modules/clinic/resource.c.h
Modules/clinic/selectmodule.c.h
Modules/clinic/sha1module.c.h
Modules/clinic/sha256module.c.h
Modules/clinic/sha512module.c.h
Modules/clinic/signalmodule.c.h
Modules/clinic/socketmodule.c.h
Modules/clinic/spwdmodule.c.h
Modules/clinic/symtablemodule.c.h
Modules/clinic/termios.c.h
Modules/clinic/unicodedata.c.h
Modules/clinic/zlibmodule.c.h
Objects/clinic/bytearrayobject.c.h
Objects/clinic/bytesobject.c.h
Objects/clinic/classobject.c.h
Objects/clinic/codeobject.c.h
Objects/clinic/complexobject.c.h
Objects/clinic/descrobject.c.h
Objects/clinic/dictobject.c.h
Objects/clinic/enumobject.c.h
Objects/clinic/floatobject.c.h
Objects/clinic/funcobject.c.h
Objects/clinic/listobject.c.h
Objects/clinic/longobject.c.h
Objects/clinic/memoryobject.c.h
Objects/clinic/moduleobject.c.h
Objects/clinic/odictobject.c.h
Objects/clinic/structseq.c.h
Objects/clinic/tupleobject.c.h
Objects/clinic/typeobject.c.h
Objects/clinic/unicodeobject.c.h
Objects/stringlib/clinic/transmogrify.h.h
PC/clinic/_msi.c.h
PC/clinic/_testconsole.c.h
PC/clinic/msvcrtmodule.c.h
PC/clinic/winreg.c.h
PC/clinic/winsound.c.h
Python/Python-tokenize.c
Python/clinic/Python-tokenize.c.h
Python/clinic/_warnings.c.h
Python/clinic/bltinmodule.c.h
Python/clinic/context.c.h
Python/clinic/import.c.h
Python/clinic/marshal.c.h
Python/clinic/sysmodule.c.h
Python/clinic/traceback.c.h
Python/getargs.c
Tools/clinic/clinic.py