summaryrefslogtreecommitdiffstats
path: root/Parser
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2017-09-08 05:51:28 (GMT)
committerGitHub <noreply@github.com>2017-09-08 05:51:28 (GMT)
commit2ebc5ce42a8a9e047e790aefbf9a94811569b2b6 (patch)
treef8c483f24e0d1ee43ac5cc9ad82d2ee7cccf69d2 /Parser
parentbab21faded31c70b142776b9a6075a4cda055d7f (diff)
downloadcpython-2ebc5ce42a8a9e047e790aefbf9a94811569b2b6.zip
cpython-2ebc5ce42a8a9e047e790aefbf9a94811569b2b6.tar.gz
cpython-2ebc5ce42a8a9e047e790aefbf9a94811569b2b6.tar.bz2
bpo-30860: Consolidate stateful runtime globals. (#3397)
* group the (stateful) runtime globals into various topical structs * consolidate the topical structs under a single top-level _PyRuntimeState struct * add a check-c-globals.py script that helps identify runtime globals Other globals are excluded (see globals.txt and check-c-globals.py).
Diffstat (limited to 'Parser')
-rw-r--r--Parser/myreadline.c1
-rw-r--r--Parser/pgenmain.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/Parser/myreadline.c b/Parser/myreadline.c
index 1b63f78..7fe04a9 100644
--- a/Parser/myreadline.c
+++ b/Parser/myreadline.c
@@ -10,6 +10,7 @@
*/
#include "Python.h"
+#include "internal/pystate.h"
#ifdef MS_WINDOWS
#define WIN32_LEAN_AND_MEAN
#include "windows.h"
diff --git a/Parser/pgenmain.c b/Parser/pgenmain.c
index ce66ebc..8f3e2f7 100644
--- a/Parser/pgenmain.c
+++ b/Parser/pgenmain.c
@@ -16,6 +16,8 @@
#define PGEN
#include "Python.h"
+#include "internal/mem.h"
+#include "internal/pystate.h"
#include "pgenheaders.h"
#include "grammar.h"
#include "node.h"
@@ -25,6 +27,7 @@
int Py_DebugFlag;
int Py_VerboseFlag;
int Py_IgnoreEnvironmentFlag;
+_PyRuntimeState _PyRuntime = {0, 0};
/* Forward */
grammar *getgrammar(const char *filename);
@@ -59,6 +62,8 @@ main(int argc, char **argv)
filename = argv[1];
graminit_h = argv[2];
graminit_c = argv[3];
+ _PyObject_Initialize(&_PyRuntime.obj);
+ _PyMem_Initialize(&_PyRuntime.mem);
g = getgrammar(filename);
fp = fopen(graminit_c, "w");
if (fp == NULL) {