Message340333
In most case, docstring in C is constant.
Can we add "const"? If we can, it can avoid allocating and copying several KBs.
--- a/Include/pymacro.h
+++ b/Include/pymacro.h
@@ -69,4 +69,4 @@
/* Define macros for inline documentation. */
-#define PyDoc_VAR(name) static char name[]
+#define PyDoc_VAR(name) static const char name[]
#define PyDoc_STRVAR(name,str) PyDoc_VAR(name) = PyDoc_STR(str)
#ifdef WITH_DOC_STRINGS
Some drastic impacts:
before:
text data bss dec hex filename
110446 57371 96 167913 28fe9 Modules/posixmodule.o
91937 32236 208 124381 1e5dd build/temp.linux-x86_64-3.8/home/inada-n/work/python/cpython/Modules/_decimal/_decimal.o
61070 31534 472 93076 16b94 build/temp.linux-x86_64-3.8/home/inada-n/work/python/cpython/Modules/_cursesmodule.o
after:
$ size **/*.o
text data bss dec hex filename
150761 17064 96 167921 28ff1 Modules/posixmodule.o
115213 8976 208 124397 1e5ed build/temp.linux-x86_64-3.8/home/inada-n/work/python/cpython/Modules/_decimal/_decimal.o
86878 5736 472 93086 16b9e build/temp.linux-x86_64-3.8/home/inada-n/work/python/cpython/Modules/_cursesmodule.o |
|
Date |
User |
Action |
Args |
2019-04-16 12:05:17 | methane | set | recipients:
+ methane |
2019-04-16 12:05:17 | methane | set | messageid: <1555416317.5.0.961282490804.issue36641@roundup.psfhosted.org> |
2019-04-16 12:05:17 | methane | link | issue36641 messages |
2019-04-16 12:05:17 | methane | create | |
|