[Python-checkins] CVS: python/dist/src/Python pythonrun.c,2.155,2.156
Neil Schemenauer
nascheme@users.sourceforge.net
Fri, 22 Mar 2002 15:53:38 -0800
Update of /cvsroot/python/python/dist/src/Python
In directory usw-pr-cvs1:/tmp/cvs-serv25797/Python
Modified Files:
pythonrun.c
Log Message:
Disable the parser hacks that enabled the "yield" keyword using a future
statement.
Index: pythonrun.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/pythonrun.c,v
retrieving revision 2.155
retrieving revision 2.156
diff -C2 -d -r2.155 -r2.156
*** pythonrun.c 3 Mar 2002 21:30:27 -0000 2.155
--- pythonrun.c 22 Mar 2002 23:53:36 -0000 2.156
***************
*** 543,546 ****
--- 543,555 ----
}
+ /* compute parser flags based on compiler flags */
+ #if 0 /* future keyword */
+ #define PARSER_FLAGS(flags) \
+ (((flags) && (flags)->cf_flags & CO_GENERATOR_ALLOWED) ? \
+ PyPARSE_YIELD_IS_KEYWORD : 0)
+ #else
+ #define PARSER_FLAGS(flags) 0
+ #endif
+
int
PyRun_InteractiveOneFlags(FILE *fp, char *filename, PyCompilerFlags *flags)
***************
*** 569,575 ****
n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar,
Py_single_input, ps1, ps2, &err,
! (flags &&
! flags->cf_flags & CO_GENERATOR_ALLOWED) ?
! PyPARSE_YIELD_IS_KEYWORD : 0);
Py_XDECREF(v);
Py_XDECREF(w);
--- 578,582 ----
n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar,
Py_single_input, ps1, ps2, &err,
! PARSER_FLAGS(flags));
Py_XDECREF(v);
Py_XDECREF(w);
***************
*** 1032,1038 ****
{
return run_err_node(PyParser_SimpleParseStringFlags(
! str, start,
! (flags && flags->cf_flags & CO_GENERATOR_ALLOWED) ?
! PyPARSE_YIELD_IS_KEYWORD : 0),
"<string>", globals, locals, flags);
}
--- 1039,1043 ----
{
return run_err_node(PyParser_SimpleParseStringFlags(
! str, start, PARSER_FLAGS(flags)),
"<string>", globals, locals, flags);
}
***************
*** 1051,1056 ****
{
node *n = PyParser_SimpleParseFileFlags(fp, filename, start,
! (flags && flags->cf_flags & CO_GENERATOR_ALLOWED) ?
! PyPARSE_YIELD_IS_KEYWORD : 0);
if (closeit)
fclose(fp);
--- 1056,1060 ----
{
node *n = PyParser_SimpleParseFileFlags(fp, filename, start,
! PARSER_FLAGS(flags));
if (closeit)
fclose(fp);
***************
*** 1126,1132 ****
node *n;
PyCodeObject *co;
! n = PyParser_SimpleParseStringFlags(str, start,
! (flags && flags->cf_flags & CO_GENERATOR_ALLOWED) ?
! PyPARSE_YIELD_IS_KEYWORD : 0);
if (n == NULL)
return NULL;
--- 1130,1134 ----
node *n;
PyCodeObject *co;
! n = PyParser_SimpleParseStringFlags(str, start, PARSER_FLAGS(flags));
if (n == NULL)
return NULL;