[BACK]Return to lex.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / parse

Diff for /OpenXM_contrib2/asir2000/parse/lex.c between version 1.22 and 1.25

version 1.22, 2003/02/14 22:29:18 version 1.25, 2003/05/30 00:47:24
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/parse/lex.c,v 1.21 2002/09/09 23:52:45 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/parse/lex.c,v 1.24 2003/05/14 06:20:12 noro Exp $
 */  */
 #include <ctype.h>  #include <ctype.h>
 #include "ca.h"  #include "ca.h"
Line 299  int yylex()
Line 299  int yylex()
                 }                  }
                 yylvalp->p = (pointer)r;                  yylvalp->p = (pointer)r;
                 return ( FORMULA );                  return ( FORMULA );
         } else if ( isalpha(c) ) {          } else if ( isalpha(c) || c == ':' ) {
                 i = 0;                  if ( c == ':' ) {
                 tbuf[i++] = c;                          c1 = Getc();
                           if ( c1 != ':' ) {
                                   Ungetc(c1);
                                   return c;
                           }
                           c1 = Getc();
                           if ( !isalpha(c1) ) {
                                   Ungetc(c1);
                                   return COLONCOLON;
                           }
                           i = 0;
                           tbuf[i++] = ':';
                           tbuf[i++] = ':';
                           tbuf[i++] = c1;
                   } else {
                           i = 0;
                           tbuf[i++] = c;
                   }
                 while ( 1 ) {                  while ( 1 ) {
                         c = Getc();                          c = Getc();
                         if ( isalpha(c)||isdigit(c)||(c=='_') ) {                          if ( isalpha(c)||isdigit(c)||(c=='_')||(c=='.') ) {
                                 REALLOC_TBUF tbuf[i++] = c;                                  REALLOC_TBUF tbuf[i++] = c;
                         } else                          } else
                                 break;                                  break;
Line 531  int Egetc(FILE *fp)
Line 548  int Egetc(FILE *fp)
         int c;          int c;
   
         if ( fp ) {          if ( fp ) {
 #if defined(FEP)  #if FEP
                 if ( do_fep && isatty(fileno(fp)) )                  if ( do_fep && isatty(fileno(fp)) )
                         c = readline_getc();                          c = readline_getc();
                 else                  else
Line 570  void Eungetc(int c,FILE *fp)
Line 587  void Eungetc(int c,FILE *fp)
         if ( fp ) {          if ( fp ) {
                 if ( asir_infile->encoded )                  if ( asir_infile->encoded )
                         c = (int)encrypt_char((unsigned char)c);                          c = (int)encrypt_char((unsigned char)c);
 #if defined(FEP)  #if FEP
                 if ( do_fep && isatty(fileno(fp)) )                  if ( do_fep && isatty(fileno(fp)) )
                         readline_ungetc();                          readline_ungetc();
                 else                  else
Line 628  static void Gets(char *s)
Line 645  static void Gets(char *s)
         *s = 0;          *s = 0;
 }  }
   
 #if defined(FEP)  #if FEP
   
 static char *readline_line;  static char *readline_line;
 static int readline_nc,readline_index;  static int readline_nc,readline_index;

Legend:
Removed from v.1.22  
changed lines
  Added in v.1.25

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>