diff options
author | Guido van Rossum <guido@python.org> | 1997-05-07 17:46:13 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1997-05-07 17:46:13 (GMT) |
commit | b05a5c7698cd8dff3e5c02e513db765ba12281f0 (patch) | |
tree | 86831a79ad6434c88c57ed7cc730cfcd66c3554c /Python | |
parent | 8813b58ffa6d83522ad2bbec0437c5c0e52a7ba9 (diff) | |
download | cpython-b05a5c7698cd8dff3e5c02e513db765ba12281f0.zip cpython-b05a5c7698cd8dff3e5c02e513db765ba12281f0.tar.gz cpython-b05a5c7698cd8dff3e5c02e513db765ba12281f0.tar.bz2 |
Instead of importing graminit.h whenever one of the three grammar 'root'
symbols is needed, define these in Python.h with a Py_ prefix.
Diffstat (limited to 'Python')
-rw-r--r-- | Python/bltinmodule.c | 13 | ||||
-rw-r--r-- | Python/ceval.c | 6 | ||||
-rw-r--r-- | Python/compile.c | 14 | ||||
-rw-r--r-- | Python/import.c | 5 | ||||
-rw-r--r-- | Python/pythonrun.c | 7 |
5 files changed, 27 insertions, 18 deletions
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 2461904..7c46286 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -34,7 +34,6 @@ PERFORMANCE OF THIS SOFTWARE. #include "Python.h" #include "node.h" -#include "graminit.h" #include "compile.h" #include "eval.h" @@ -283,11 +282,11 @@ builtin_compile(self, args) if (!PyArg_ParseTuple(args, "sss:compile", &str, &filename, &startstr)) return NULL; if (strcmp(startstr, "exec") == 0) - start = file_input; + start = Py_file_input; else if (strcmp(startstr, "eval") == 0) - start = eval_input; + start = Py_eval_input; else if (strcmp(startstr, "single") == 0) - start = single_input; + start = Py_single_input; else { PyErr_SetString(PyExc_ValueError, "compile() mode must be 'exec' or 'eval' or 'single'"); @@ -521,7 +520,7 @@ builtin_eval(self, args) } while (*str == ' ' || *str == '\t') str++; - return PyRun_String(str, eval_input, globals, locals); + return PyRun_String(str, Py_eval_input, globals, locals); } static PyObject * @@ -558,7 +557,7 @@ builtin_execfile(self, args) PyErr_SetFromErrno(PyExc_IOError); return NULL; } - res = PyRun_File(fp, filename, file_input, globals, locals); + res = PyRun_File(fp, filename, Py_file_input, globals, locals); Py_BEGIN_ALLOW_THREADS fclose(fp); Py_END_ALLOW_THREADS @@ -882,7 +881,7 @@ builtin_input(self, args) PyEval_GetBuiltins()) != 0) return NULL; } - res = PyRun_String(str, eval_input, globals, locals); + res = PyRun_String(str, Py_eval_input, globals, locals); Py_DECREF(line); return res; } diff --git a/Python/ceval.c b/Python/ceval.c index 58f0a8c..e23ea72 100644 --- a/Python/ceval.c +++ b/Python/ceval.c @@ -43,7 +43,6 @@ PERFORMANCE OF THIS SOFTWARE. #include "frameobject.h" #include "eval.h" #include "opcode.h" -#include "graminit.h" #include <ctype.h> @@ -2637,7 +2636,8 @@ exec_statement(f, prog, globals, locals) if (PyFile_Check(prog)) { FILE *fp = PyFile_AsFile(prog); char *name = PyString_AsString(PyFile_Name(prog)); - if (PyRun_File(fp, name, file_input, globals, locals) == NULL) + if (PyRun_File(fp, name, Py_file_input, + globals, locals) == NULL) return -1; return 0; } @@ -2647,7 +2647,7 @@ exec_statement(f, prog, globals, locals) "embedded '\\0' in exec string"); return -1; } - v = PyRun_String(s, file_input, globals, locals); + v = PyRun_String(s, Py_file_input, globals, locals); if (v == NULL) return -1; Py_DECREF(v); diff --git a/Python/compile.c b/Python/compile.c index 9d6d395..9525aa0 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -58,6 +58,20 @@ PERFORMANCE OF THIS SOFTWARE. #include <ctype.h> +/* Three symbols from graminit.h are also defined in Python.h, with + Py_ prefixes to their names. Python.h can't include graminit.h + (which defines too many confusing symbols), but we can check here + that they haven't changed (which is very unlikely, but possible). */ +#if Py_single_input != single_input +#error "single_input has changed -- update Py_single_input in Python.h" +#endif +#if Py_file_input != file_input +#error "file_input has changed -- update Py_file_input in Python.h" +#endif +#if Py_eval_input != eval_input +#error "eval_input has changed -- update Py_eval_input in Python.h" +#endif + int Py_OptimizeFlag = 0; #define OP_DELETE 0 diff --git a/Python/import.c b/Python/import.c index ea6440a..f2d8040 100644 --- a/Python/import.c +++ b/Python/import.c @@ -35,7 +35,6 @@ PERFORMANCE OF THIS SOFTWARE. #include "node.h" #include "token.h" -#include "graminit.h" #include "errcode.h" #include "marshal.h" #include "compile.h" @@ -43,8 +42,6 @@ PERFORMANCE OF THIS SOFTWARE. #include "osdefs.h" #include "importdl.h" #ifdef macintosh -/* 'argument' is a grammar symbol, but also used in some mac header files */ -#undef argument #include "macglue.h" #endif @@ -317,7 +314,7 @@ parse_source_module(pathname, fp) PyCodeObject *co; node *n; - n = PyParser_SimpleParseFile(fp, pathname, file_input); + n = PyParser_SimpleParseFile(fp, pathname, Py_file_input); if (n == NULL) return NULL; co = PyNode_Compile(n, pathname); diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 8bb7565..138bc3f 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -36,7 +36,6 @@ PERFORMANCE OF THIS SOFTWARE. #include "grammar.h" #include "node.h" #include "parsetok.h" -#include "graminit.h" #undef argument /* Avoid conflict on Mac */ #include "errcode.h" #include "compile.h" @@ -237,7 +236,7 @@ PyRun_InteractiveOne(fp, filename) } Py_BEGIN_ALLOW_THREADS n = PyParser_ParseFile(fp, filename, &_PyParser_Grammar, - single_input, ps1, ps2, &err); + Py_single_input, ps1, ps2, &err); Py_END_ALLOW_THREADS Py_XDECREF(v); Py_XDECREF(w); @@ -296,7 +295,7 @@ PyRun_SimpleFile(fp, filename) Py_OptimizeFlag = 1; v = run_pyc_file(fp, filename, d, d); } else { - v = PyRun_File(fp, filename, file_input, d, d); + v = PyRun_File(fp, filename, Py_file_input, d, d); } if (v == NULL) { PyErr_Print(); @@ -316,7 +315,7 @@ PyRun_SimpleString(command) if (m == NULL) return -1; d = PyModule_GetDict(m); - v = PyRun_String(command, file_input, d, d); + v = PyRun_String(command, Py_file_input, d, d); if (v == NULL) { PyErr_Print(); return -1; |