*/
static char pbcstack[400]; /* XXX missing size checks */
static int pbcpos = 0;
+static void pbcpush(char x);
+static int pbcpop(char x);
static int parencount = 0;
static int commaout = 0;
void ael_yyset_column (int column_no , yyscan_t yyscanner);
int ael_yyparse (struct parse_io *);
-static void pbcpush(char x);
-static int pbcpop(char x);
/*
* A stack to process include files.
} else {
STORE_LOC;
yylval->str = strdup(yytext);
- *(yylval->str+strlen(yylval->str)-1)=0;
- /* printf("Got paren word %s\n", yylval->str); */
+ yylval->str[strlen(yylval->str)-1] = '\0'; /* trim trailing ')' */
unput(')');
BEGIN(0);
return word;
STORE_LOC;
yylval->str = strdup(yytext);
if(yyleng > 1 )
- *(yylval->str+yyleng-1)=0;
+ yylval->str[yyleng-1] = '\0'; /* trim trailing ')' */
BEGIN(0);
if ( !strcmp(yylval->str,")") ) {
free(yylval->str);
*/
static char pbcstack[400]; /* XXX missing size checks */
static int pbcpos = 0;
+static void pbcpush(char x);
+static int pbcpop(char x);
static int parencount = 0;
static int commaout = 0;
void ael_yyset_column (int column_no , yyscan_t yyscanner);
int ael_yyparse (struct parse_io *);
-static void pbcpush(char x);
-static int pbcpop(char x);
/*
* A stack to process include files.
} else {
STORE_LOC;
yylval->str = strdup(yytext);
- *(yylval->str+strlen(yylval->str)-1)=0;
- /* printf("Got paren word %s\n", yylval->str); */
+ yylval->str[strlen(yylval->str)-1] = '\0'; /* trim trailing ')' */
unput(')');
BEGIN(0);
return word;
case 45:
/* rule 45 can match eol */
YY_RULE_SETUP
-#line 251 "ael.flex"
+#line 250 "ael.flex"
{
char c = yytext[yyleng-1];
if (c == '(')
case 46:
/* rule 46 can match eol */
YY_RULE_SETUP
-#line 259 "ael.flex"
+#line 258 "ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c)) { /* error */
case 47:
/* rule 47 can match eol */
YY_RULE_SETUP
-#line 272 "ael.flex"
+#line 271 "ael.flex"
{
char c = yytext[yyleng-1];
if (c == '(')
case 48:
/* rule 48 can match eol */
YY_RULE_SETUP
-#line 280 "ael.flex"
+#line 279 "ael.flex"
{
if ( pbcpop(')') ) { /* error */
STORE_LOC;
STORE_LOC;
yylval->str = strdup(yytext);
if(yyleng > 1 )
- *(yylval->str+yyleng-1)=0;
+ yylval->str[yyleng-1] = '\0'; /* trim trailing ')' */
BEGIN(0);
if ( !strcmp(yylval->str,")") ) {
free(yylval->str);
case 49:
/* rule 49 can match eol */
YY_RULE_SETUP
-#line 310 "ael.flex"
+#line 309 "ael.flex"
{
if( parencount != 0) { /* printf("Folding in a comma!\n"); */
yymore();
case 50:
/* rule 50 can match eol */
YY_RULE_SETUP
-#line 336 "ael.flex"
+#line 335 "ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c) ) { /* error */
case 51:
/* rule 51 can match eol */
YY_RULE_SETUP
-#line 350 "ael.flex"
+#line 349 "ael.flex"
{
char c = yytext[yyleng-1];
yymore();
case 52:
/* rule 52 can match eol */
YY_RULE_SETUP
-#line 356 "ael.flex"
+#line 355 "ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c) ) { /* error */
case 53:
/* rule 53 can match eol */
YY_RULE_SETUP
-#line 368 "ael.flex"
+#line 367 "ael.flex"
{
STORE_LOC;
yylval->str = strdup(yytext);
case 54:
/* rule 54 can match eol */
YY_RULE_SETUP
-#line 378 "ael.flex"
+#line 377 "ael.flex"
{
FILE *in1;
char fnamebuf[1024],*p1,*p2;
case YY_STATE_EOF(paren):
case YY_STATE_EOF(semic):
case YY_STATE_EOF(argg):
-#line 440 "ael.flex"
+#line 439 "ael.flex"
{
if ( --include_stack_index < 0 ) {
yyterminate();
YY_BREAK
case 55:
YY_RULE_SETUP
-#line 453 "ael.flex"
+#line 452 "ael.flex"
ECHO;
YY_BREAK
-#line 1610 "ael_lex.c"
+#line 1609 "ael_lex.c"
case YY_END_OF_BUFFER:
{
#define YYTABLES_NAME "yytables"
-#line 453 "ael.flex"
+#line 452 "ael.flex"