# define NLSTATE yyprevious=YYNEWLINE
# define BEGIN yybgin = yysvec + 1 +
# define YYSTATE (yyestate-yysvec-1)
# define output(c) putc(c,yyout)
# define input() (((yytchar=yysptr>yysbuf?U(*--yysptr):getc(yyin))==10?(yylineno++,yytchar):yytchar)==EOF?0:yytchar)
# define unput(c) {yytchar= (c);if(yytchar=='\n')yylineno--;*yysptr++=yytchar;}
# define yymore() (yymorfg=1)
# define ECHO fprintf(yyout, "%s",yytext)
# define REJECT { nstr = yyreject(); goto yyfussy;}
int yyleng
; extern char yytext
[];
extern char *yysptr
, yysbuf
[];
FILE *yyin
={stdin
}, *yyout
={stdout
};
extern struct yysvf yysvec
[], *yybgin
;
static char sccsid
[] = "@(#)scan.l 4.1 (Berkeley) 10/20/82";
int nstr
; extern int yyprevious
;
while((nstr
= yylook()) >= 0)
if(yywrap()) return(0); break;
yylval
.number
= KW_GATEWAY
;
yylval
.namelist
= newname(yytext
);
yylval
.number
= atoi(yytext
);
fprintf(stderr
, "Illegal char: '%s'\n", yytext
);
fprintf(yyout
,"bad switch yylook %d",nstr
);
struct yywork
{ YYTYPE verify
, advance
; } yycrank
[] ={
13,22, 30,31, 0,0, 15,24,
12,20, 12,20, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
14,23, 22,25, 23,26, 24,27,
25,28, 26,29, 28,30, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
12,21, 12,21, 12,21, 12,21,
yycrank
+0, 0, yyvstop
+11,
yycrank
+0, 0, yyvstop
+14,
yycrank
+37, 0, yyvstop
+17,
yycrank
+0, 0, yyvstop
+20,
yycrank
+-6, 0, yyvstop
+23,
yycrank
+50, 0, yyvstop
+26,
yycrank
+15, yysvec
+12, yyvstop
+29,
yycrank
+29, yysvec
+12, yyvstop
+32,
yycrank
+14, yysvec
+12, yyvstop
+35,
yycrank
+0, yysvec
+4, yyvstop
+38,
yycrank
+0, yysvec
+5, yyvstop
+40,
yycrank
+0, yysvec
+9, yyvstop
+42,
yycrank
+-14, yysvec
+11, yyvstop
+44,
yycrank
+0, yysvec
+12, yyvstop
+46,
yycrank
+25, yysvec
+12, yyvstop
+48,
yycrank
+27, yysvec
+12, yyvstop
+50,
yycrank
+27, yysvec
+12, yyvstop
+52,
yycrank
+43, yysvec
+12, yyvstop
+54,
yycrank
+29, yysvec
+12, yyvstop
+56,
yycrank
+0, yysvec
+12, yyvstop
+58,
yycrank
+27, yysvec
+12, yyvstop
+61,
yycrank
+0, yysvec
+12, yyvstop
+63,
yycrank
+16, yysvec
+12, yyvstop
+66,
yycrank
+52, yysvec
+12, yyvstop
+68,
yycrank
+0, yysvec
+12, yyvstop
+70,
struct yywork
*yytop
= yycrank
+141;
struct yysvf
*yybgin
= yysvec
+1;
00 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,011 ,012 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
011 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,'-' ,'-' ,'-' ,
'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,'0' ,
'0' ,'0' ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,'A' ,
'A' ,'A' ,'A' ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
01 ,01 ,01 ,01 ,01 ,01 ,01 ,01 ,
# define NLSTATE yyprevious=YYNEWLINE
struct yysvf
*yylstate
[YYLMAX
], **yylsp
, **yyolsp
;
extern struct yysvf
*yyestate
;
int yyprevious
= YYNEWLINE
;
register struct yysvf
*yystate
, **lsp
;
register struct yywork
*yyt
;
yylastch
= yytext
+yyleng
;
yyestate
= yystate
= yybgin
;
if (yyprevious
==YYNEWLINE
) yystate
++;
if(debug
)fprintf(yyout
,"state %d\n",yystate
-yysvec
-1);
if(yyt
== yycrank
){ /* may not be any transitions */
if(yyz
->yystoff
== yycrank
)break;
*yylastch
++ = yych
= input();
if ( (int)yyt
> (int)yycrank
){
if (yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
if(yyt
->advance
+yysvec
== YYLERR
) /* error transitions */
{unput(*--yylastch
);break;}
*lsp
++ = yystate
= yyt
->advance
+yysvec
;
else if((int)yyt
< (int)yycrank
) { /* r < yycrank */
yyt
= yyr
= yycrank
+(yycrank
-yyt
);
if(debug
)fprintf(yyout
,"compressed state\n");
if(yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
if(yyt
->advance
+yysvec
== YYLERR
) /* error transitions */
{unput(*--yylastch
);break;}
*lsp
++ = yystate
= yyt
->advance
+yysvec
;
yyt
= yyr
+ YYU(yymatch
[yych
]);
fprintf(yyout
,"try fall back character ");
allprint(YYU(yymatch
[yych
]));
if(yyt
<= yytop
&& yyt
->verify
+yysvec
== yystate
){
if(yyt
->advance
+yysvec
== YYLERR
) /* error transition */
{unput(*--yylastch
);break;}
*lsp
++ = yystate
= yyt
->advance
+yysvec
;
if ((yystate
= yystate
->yyother
) && (yyt
= yystate
->yystoff
) != yycrank
){
if(debug
)fprintf(yyout
,"fall back to state %d\n",yystate
-yysvec
-1);
{unput(*--yylastch
);break;}
fprintf(yyout
,"state %d char ",yystate
-yysvec
-1);
fprintf(yyout
,"stopped at %d with ",*(lsp
-1)-yysvec
-1);
while (lsp
-- > yylstate
){
if (*lsp
!= 0 && (yyfnd
= (*lsp
)->yystops
) && *yyfnd
> 0){
if(yyextra
[*yyfnd
]){ /* must backup */
while(yyback((*lsp
)->yystops
,-*yyfnd
) != 1 && lsp
> yylstate
){
yyprevious
= YYU(*yylastch
);
yyleng
= yylastch
-yytext
+1;
fprintf(yyout
,"\nmatch ");
fprintf(yyout
," action %d\n",*yyfnd
);
if (yytext
[0] == 0 /* && feof(yyin) */)
yyprevious
= yytext
[0] = input();
/* the following are only used in the lex library */