[Python-checkins] python/dist/src/Parser parsetok.c,2.30,2.30.2.1 tokenizer.h,2.16,2.16.28.1

jhylton@users.sourceforge.net jhylton@users.sourceforge.net
Sun, 07 Jul 2002 11:18:21 -0700


Update of /cvsroot/python/python/dist/src/Parser
In directory usw-pr-cvs1:/tmp/cvs-serv11421/Parser

Modified Files:
      Tag: ast-branch
	parsetok.c tokenizer.h 
Log Message:
Move PyParser_ASTFromString() and Filename() into pythonrun.h
where they interfere less with the parser.

Declare return value to be pointer to struct to avoid dependency on
Python-ast.h.

Make sure new interfaces use const where appopriate and chase this
partway into the parser.


Index: parsetok.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Parser/parsetok.c,v
retrieving revision 2.30
retrieving revision 2.30.2.1
diff -C2 -d -r2.30 -r2.30.2.1
*** parsetok.c	22 Mar 2002 23:53:03 -0000	2.30
--- parsetok.c	7 Jul 2002 18:18:18 -0000	2.30.2.1
***************
*** 15,19 ****
  /* Forward */
  static node *parsetok(struct tok_state *, grammar *, int, perrdetail *, int);
! static void initerr(perrdetail *err_ret, char* filename);
  
  /* Parse input coming from a string.  Return error code, print some errors. */
--- 15,19 ----
  /* Forward */
  static node *parsetok(struct tok_state *, grammar *, int, perrdetail *, int);
! static void initerr(perrdetail *err_ret, const char* filename);
  
  /* Parse input coming from a string.  Return error code, print some errors. */
***************
*** 25,29 ****
  
  node *
! PyParser_ParseStringFlags(char *s, grammar *g, int start,
  		          perrdetail *err_ret, int flags)
  {
--- 25,29 ----
  
  node *
! PyParser_ParseStringFlags(const char *s, grammar *g, int start,
  		          perrdetail *err_ret, int flags)
  {
***************
*** 32,36 ****
  	initerr(err_ret, NULL);
  
! 	if ((tok = PyTokenizer_FromString(s)) == NULL) {
  		err_ret->error = E_NOMEM;
  		return NULL;
--- 32,37 ----
  	initerr(err_ret, NULL);
  
! 	/* XXX Don't want to chase const into parser right now. */
! 	if ((tok = PyTokenizer_FromString((char *)s)) == NULL) {
  		err_ret->error = E_NOMEM;
  		return NULL;
***************
*** 59,63 ****
  
  node *
! PyParser_ParseFileFlags(FILE *fp, char *filename, grammar *g, int start,
  			char *ps1, char *ps2, perrdetail *err_ret, int flags)
  {
--- 60,64 ----
  
  node *
! PyParser_ParseFileFlags(FILE *fp, const char *filename, grammar *g, int start,
  			char *ps1, char *ps2, perrdetail *err_ret, int flags)
  {
***************
*** 185,189 ****
  
  static void
! initerr(perrdetail *err_ret, char* filename)
  {
  	err_ret->error = E_OK;
--- 186,190 ----
  
  static void
! initerr(perrdetail *err_ret, const char *filename)
  {
  	err_ret->error = E_OK;

Index: tokenizer.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/Parser/tokenizer.h,v
retrieving revision 2.16
retrieving revision 2.16.28.1
diff -C2 -d -r2.16 -r2.16.28.1
*** tokenizer.h	1 Sep 2000 23:29:28 -0000	2.16
--- tokenizer.h	7 Jul 2002 18:18:18 -0000	2.16.28.1
***************
*** 34,38 ****
  			/* Used to allow free continuations inside them */
  	/* Stuff for checking on different tab sizes */
! 	char *filename;	/* For error messages */
  	int altwarning;	/* Issue warning if alternate tabs don't match */
  	int alterror;	/* Issue error if alternate tabs don't match */
--- 34,38 ----
  			/* Used to allow free continuations inside them */
  	/* Stuff for checking on different tab sizes */
! 	const char *filename;	/* For error messages */
  	int altwarning;	/* Issue warning if alternate tabs don't match */
  	int alterror;	/* Issue error if alternate tabs don't match */