[Python-checkins] python/dist/src/Python ast.c, 1.1.2.44,
1.1.2.45 pythonrun.c, 2.161.2.9, 2.161.2.10
nascheme at users.sourceforge.net
nascheme at users.sourceforge.net
Sat Mar 20 16:28:25 EST 2004
Update of /cvsroot/python/python/dist/src/Python
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv989/Python
Modified Files:
Tag: ast-branch
ast.c pythonrun.c
Log Message:
Handle encoding_decl nodes. The source encoding is still
not used when parsing strings.
Index: ast.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/Attic/ast.c,v
retrieving revision 1.1.2.44
retrieving revision 1.1.2.45
diff -C2 -d -r1.1.2.44 -r1.1.2.45
*** ast.c 24 Jan 2004 19:44:12 -0000 1.1.2.44
--- ast.c 20 Mar 2004 21:28:22 -0000 1.1.2.45
***************
*** 10,14 ****
#include <assert.h>
! #if 1
#define fprintf if (0) fprintf
#endif
--- 10,14 ----
#include <assert.h>
! #if 0
#define fprintf if (0) fprintf
[...2131 lines suppressed...]
for (i = 1; i < NCH(n); i++) {
PyObject *s;
! s = parsestr(STR(CHILD(n, i)));
if (s == NULL)
goto onError;
--- 2444,2457 ----
*/
static PyObject *
! parsestrplus(struct compiling *c, const node *n)
{
PyObject *v;
int i;
REQ(CHILD(n, 0), STRING);
! if ((v = parsestr(STR(CHILD(n, 0)), c->c_encoding)) != NULL) {
/* String literal concatenation */
for (i = 1; i < NCH(n); i++) {
PyObject *s;
! s = parsestr(STR(CHILD(n, i)), c->c_encoding);
if (s == NULL)
goto onError;
Index: pythonrun.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/pythonrun.c,v
retrieving revision 2.161.2.9
retrieving revision 2.161.2.10
diff -C2 -d -r2.161.2.9 -r2.161.2.10
*** pythonrun.c 31 Dec 2003 15:00:06 -0000 2.161.2.9
--- pythonrun.c 20 Mar 2004 21:28:22 -0000 2.161.2.10
***************
*** 620,624 ****
mod = PyParser_ASTFromFile(fp, filename,
Py_single_input, ps1, ps2,
! PARSER_FLAGS(flags), &errcode);
Py_XDECREF(v);
Py_XDECREF(w);
--- 620,624 ----
mod = PyParser_ASTFromFile(fp, filename,
Py_single_input, ps1, ps2,
! flags, &errcode);
Py_XDECREF(v);
Py_XDECREF(w);
***************
*** 1060,1065 ****
PyObject *locals, PyCompilerFlags *flags)
{
! mod_ty mod = PyParser_ASTFromString(str, "<string>", start,
! PARSER_FLAGS(flags));
return run_err_mod(mod, "<string>", globals, locals, flags);
}
--- 1060,1064 ----
PyObject *locals, PyCompilerFlags *flags)
{
! mod_ty mod = PyParser_ASTFromString(str, "<string>", start, flags);
return run_err_mod(mod, "<string>", globals, locals, flags);
}
***************
*** 1070,1074 ****
{
mod_ty mod = PyParser_ASTFromFile(fp, filename, start, 0, 0,
! PARSER_FLAGS(flags), NULL);
if (closeit)
fclose(fp);
--- 1069,1073 ----
{
mod_ty mod = PyParser_ASTFromFile(fp, filename, start, 0, 0,
! flags, NULL);
if (closeit)
fclose(fp);
***************
*** 1137,1142 ****
mod_ty mod;
PyCodeObject *co;
! mod = PyParser_ASTFromString(str, filename, start,
! PARSER_FLAGS(flags));
if (mod == NULL)
return NULL;
--- 1136,1140 ----
mod_ty mod;
PyCodeObject *co;
! mod = PyParser_ASTFromString(str, filename, start, flags);
if (mod == NULL)
return NULL;
***************
*** 1148,1156 ****
Py_SymtableString(const char *str, const char *filename, int start)
{
! /* XXX flags? */
!
mod_ty mod;
struct symtable *st;
! mod = PyParser_ASTFromString(str, filename, start, 0);
if (mod == NULL)
return NULL;
--- 1146,1156 ----
Py_SymtableString(const char *str, const char *filename, int start)
{
! PyCompilerFlags local_flags;
mod_ty mod;
struct symtable *st;
!
! local_flags.cf_flags = 0; /* XXX flags? */
!
! mod = PyParser_ASTFromString(str, filename, start, &local_flags);
if (mod == NULL)
return NULL;
***************
*** 1162,1173 ****
mod_ty
PyParser_ASTFromString(const char *s, const char *filename, int start,
! int flags)
{
node *n;
perrdetail err;
n = PyParser_ParseStringFlags(s, &_PyParser_Grammar, start, &err,
! flags);
if (n)
! return PyAST_FromNode(n);
else {
err_input(&err);
--- 1162,1173 ----
mod_ty
PyParser_ASTFromString(const char *s, const char *filename, int start,
! PyCompilerFlags *flags)
{
node *n;
perrdetail err;
n = PyParser_ParseStringFlags(s, &_PyParser_Grammar, start, &err,
! PARSER_FLAGS(flags));
if (n)
! return PyAST_FromNode(n, flags);
else {
err_input(&err);
***************
*** 1178,1182 ****
mod_ty
PyParser_ASTFromFile(FILE *fp, const char *filename, int start, char *ps1,
! char *ps2, int flags, int *errcode)
{
node *n;
--- 1178,1182 ----
mod_ty
PyParser_ASTFromFile(FILE *fp, const char *filename, int start, char *ps1,
! char *ps2, PyCompilerFlags *flags, int *errcode)
{
node *n;
***************
*** 1184,1190 ****
fprintf(stderr, "filename=%s\n", filename);
n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar, start,
! ps1, ps2, &err, flags);
if (n)
! return PyAST_FromNode(n);
else {
err_input(&err);
--- 1184,1190 ----
fprintf(stderr, "filename=%s\n", filename);
n = PyParser_ParseFileFlags(fp, filename, &_PyParser_Grammar, start,
! ps1, ps2, &err, PARSER_FLAGS(flags));
if (n)
! return PyAST_FromNode(n, flags);
else {
err_input(&err);
More information about the Python-checkins
mailing list