PyRun_StringFlags(): forgot to pass the flags on to
PyParser_SimpleParseString(). Now calls
PyParser_SimpleParseStringFlags() with the correct flag.
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 1d20deb..fbc3b16 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -1005,7 +1005,10 @@
PyRun_StringFlags(char *str, int start, PyObject *globals, PyObject *locals,
PyCompilerFlags *flags)
{
- return run_err_node(PyParser_SimpleParseString(str, start),
+ return run_err_node(PyParser_SimpleParseStringFlags(
+ str, start,
+ (flags && flags->cf_flags & PyCF_GENERATORS) ?
+ PyPARSE_YIELD_IS_KEYWORD : 0),
"<string>", globals, locals, flags);
}