From: Alex Smith Date: Sat, 28 Mar 2009 20:48:29 +0000 (-0400) Subject: Update the prebuilt information X-Git-Tag: 0.29~150 X-Git-Url: http://thyrsus.com/gitweb/?a=commitdiff_plain;h=4eb40899fe474cbb0752f94279f52d6af7bc71e4;p=intercal.git Update the prebuilt information --- diff --git a/MANIFEST b/MANIFEST index f500236..4037bce 100644 --- a/MANIFEST +++ b/MANIFEST @@ -38,6 +38,7 @@ ./etc/IFFI/IFFI.h ./etc/IFFI.spec ./etc/intercal.el +./etc/intercal.vim ./etc/temp ./MANIFEST ./NEWS diff --git a/prebuilt/lexer.c b/prebuilt/lexer.c index 774de5e..ccb3cea 100644 --- a/prebuilt/lexer.c +++ b/prebuilt/lexer.c @@ -8,7 +8,7 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 34 +#define YY_FLEX_SUBMINOR_VERSION 35 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -53,7 +53,6 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; -#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -84,6 +83,8 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#endif /* ! C99 */ + #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -178,13 +179,6 @@ extern FILE *yyin, *yyout; #define unput(c) yyunput( c, (yytext_ptr) ) -/* The following is because we cannot portably get our hands on size_t - * (without autoconf's help, which isn't available because we want - * flex-generated scanners to compile on their own). - * Given that the standard has decreed that size_t exists since 1989, - * I guess we can afford to depend on it. Manoj. - */ - #ifndef YY_TYPEDEF_YY_SIZE_T #define YY_TYPEDEF_YY_SIZE_T typedef size_t yy_size_t; @@ -977,7 +971,8 @@ static char *lineptr = linebuf; ick_bool re_send_token = ick_FALSE; int lexer(void); -static int myatoi(char *text); +static int myatoi(const char *text); +void yyerror(const char *errtype); #define SETLINENO \ {if (stbeginline == 0) stbeginline = iyylineno;\ @@ -1112,7 +1107,7 @@ int getc(FILE *fp) } \ } -#line 1116 "lexer.c" +#line 1111 "lexer.c" #define INITIAL 0 @@ -1130,6 +1125,35 @@ int getc(FILE *fp) static int yy_init_globals (void ); +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int yylex_destroy (void ); + +int yyget_debug (void ); + +void yyset_debug (int debug_flag ); + +YY_EXTRA_TYPE yyget_extra (void ); + +void yyset_extra (YY_EXTRA_TYPE user_defined ); + +FILE *yyget_in (void ); + +void yyset_in (FILE * in_str ); + +FILE *yyget_out (void ); + +void yyset_out (FILE * out_str ); + +int yyget_leng (void ); + +char *yyget_text (void ); + +int yyget_lineno (void ); + +void yyset_lineno (int line_number ); + /* Macros after this point can all be overridden by user definitions in * section 1. */ @@ -1172,7 +1196,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO fwrite( yytext, yyleng, 1, yyout ) +#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1183,7 +1207,7 @@ static int input (void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - int n; \ + size_t n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -1265,10 +1289,10 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 225 "lexer.l" +#line 226 "lexer.l" -#line 1272 "lexer.c" +#line 1296 "lexer.c" if ( !(yy_init) ) { @@ -1354,132 +1378,132 @@ do_action: /* This label is used only to access EOF actions. */ case 1: /* rule 1 can match eol */ YY_RULE_SETUP -#line 227 "lexer.l" +#line 228 "lexer.l" {yylval.numval = myatoi(yytext); return(NUMBER);} YY_BREAK case 2: YY_RULE_SETUP -#line 228 "lexer.l" +#line 229 "lexer.l" {return(NOSPOT);} YY_BREAK case 3: YY_RULE_SETUP -#line 229 "lexer.l" +#line 230 "lexer.l" {return(ick_ONESPOT);} YY_BREAK case 4: YY_RULE_SETUP -#line 230 "lexer.l" +#line 231 "lexer.l" {return(ick_TWOSPOT);} YY_BREAK case 5: YY_RULE_SETUP -#line 231 "lexer.l" +#line 232 "lexer.l" {return(ick_TAIL);} YY_BREAK case 6: YY_RULE_SETUP -#line 232 "lexer.l" +#line 233 "lexer.l" {return(ick_HYBRID);} YY_BREAK case 7: YY_RULE_SETUP -#line 233 "lexer.l" +#line 234 "lexer.l" {return(MESH);} YY_BREAK case 8: -#line 236 "lexer.l" -case 9: #line 237 "lexer.l" +case 9: +#line 238 "lexer.l" case 10: YY_RULE_SETUP -#line 237 "lexer.l" +#line 238 "lexer.l" {return(MINGLE); /* AIS: CLC-INTERCAL ick_mingle symbols. The \xBD is ISO-8859-1 for cent. */} YY_BREAK case 11: -#line 240 "lexer.l" -case 12: #line 241 "lexer.l" -case 13: +case 12: #line 242 "lexer.l" -case 14: +case 13: #line 243 "lexer.l" -case 15: +case 14: #line 244 "lexer.l" -case 16: +case 15: #line 245 "lexer.l" -case 17: +case 16: #line 246 "lexer.l" -case 18: +case 17: #line 247 "lexer.l" -case 19: +case 18: #line 248 "lexer.l" -case 20: +case 19: #line 249 "lexer.l" -case 21: +case 20: #line 250 "lexer.l" -case 22: +case 21: #line 251 "lexer.l" -case 23: +case 22: #line 252 "lexer.l" -case 24: +case 23: #line 253 "lexer.l" -case 25: +case 24: #line 254 "lexer.l" -case 26: +case 25: #line 255 "lexer.l" -case 27: +case 26: #line 256 "lexer.l" -case 28: +case 27: #line 257 "lexer.l" -case 29: +case 28: #line 258 "lexer.l" -case 30: +case 29: #line 259 "lexer.l" -case 31: +case 30: #line 260 "lexer.l" -case 32: +case 31: #line 261 "lexer.l" +case 32: +#line 262 "lexer.l" case 33: YY_RULE_SETUP -#line 261 "lexer.l" +#line 262 "lexer.l" {return(MINGLE);} YY_BREAK case 34: YY_RULE_SETUP -#line 263 "lexer.l" +#line 264 "lexer.l" {return(SELECT);} YY_BREAK case 35: YY_RULE_SETUP -#line 265 "lexer.l" +#line 266 "lexer.l" {return(SLAT); /* AIS: Operand overloading */} YY_BREAK case 36: YY_RULE_SETUP -#line 266 "lexer.l" +#line 267 "lexer.l" {return(BACKSLAT); /* ditto */} YY_BREAK case 37: YY_RULE_SETUP -#line 268 "lexer.l" +#line 269 "lexer.l" {yylval.numval = AND; return(UNARY);} YY_BREAK case 38: YY_RULE_SETUP -#line 269 "lexer.l" +#line 270 "lexer.l" {yylval.numval = OR; return(UNARY);} YY_BREAK case 39: -#line 271 "lexer.l" -case 40: #line 272 "lexer.l" -case 41: +case 40: #line 273 "lexer.l" +case 41: +#line 274 "lexer.l" case 42: YY_RULE_SETUP -#line 273 "lexer.l" +#line 274 "lexer.l" {yylval.numval = XOR; return(UNARY); /* AIS: CLC-INTERCAL uses \xBE, ISO-8859-1 for yen; for some reason, \xA5 is what was detected by the compiler @@ -1487,34 +1511,34 @@ YY_RULE_SETUP YY_BREAK case 43: YY_RULE_SETUP -#line 277 "lexer.l" +#line 278 "lexer.l" {if(clclex) yylval.numval = WHIRL; else yylval.numval = XOR; return(UNARY); /* AIS: ? is a unary operator in both C-INTERCAL and CLC-INTERCAL, but with different meanings. */} YY_BREAK case 44: -#line 282 "lexer.l" +#line 283 "lexer.l" case 45: YY_RULE_SETUP -#line 282 "lexer.l" +#line 283 "lexer.l" {yylval.numval = FIN; return(UNARY); /* AIS: | is CLC */} YY_BREAK case 46: YY_RULE_SETUP -#line 283 "lexer.l" +#line 284 "lexer.l" {if(clclex) return(NOSPOT); /* AIS: a C/CLC ambiguity */ else {yylval.numval = WHIRL; return(UNARY);}} YY_BREAK case 47: /* rule 47 can match eol */ YY_RULE_SETUP -#line 285 "lexer.l" +#line 286 "lexer.l" {yylval.numval = WHIRL + myatoi(yytext) - 1; return(UNARY);} YY_BREAK case 48: YY_RULE_SETUP -#line 287 "lexer.l" +#line 288 "lexer.l" {char temp = sparkearsstack[sparkearslev/32]&1; STACKSPARKEARS(0); /* AIS: I added all mentions of STACKSPARKEARS, OPEN\(SPARK\|EARS\), @@ -1524,7 +1548,7 @@ YY_RULE_SETUP YY_BREAK case 49: YY_RULE_SETUP -#line 293 "lexer.l" +#line 294 "lexer.l" {char temp = sparkearsstack[sparkearslev/32]&1; STACKSPARKEARS(1); return(temp?CLOSEEARS:OPENEARS);} @@ -1532,116 +1556,116 @@ YY_RULE_SETUP case 50: /* rule 50 can match eol */ YY_RULE_SETUP -#line 297 "lexer.l" +#line 298 "lexer.l" {SETLINENO; yylval.numval = myatoi(yytext); return(LABEL);} YY_BREAK case 51: YY_RULE_SETUP -#line 299 "lexer.l" +#line 300 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; return(DO);} YY_BREAK case 52: YY_RULE_SETUP -#line 300 "lexer.l" +#line 301 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; return(DO);} YY_BREAK case 53: YY_RULE_SETUP -#line 301 "lexer.l" +#line 302 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(DO);} YY_BREAK case 54: YY_RULE_SETUP -#line 302 "lexer.l" +#line 303 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(DO);} YY_BREAK case 55: /* rule 55 can match eol */ YY_RULE_SETUP -#line 303 "lexer.l" +#line 304 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(DO);} YY_BREAK case 56: /* rule 56 can match eol */ YY_RULE_SETUP -#line 304 "lexer.l" +#line 305 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(DO);} YY_BREAK case 57: YY_RULE_SETUP -#line 305 "lexer.l" +#line 306 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; return(MAYBE);} YY_BREAK case 58: /* rule 58 can match eol */ YY_RULE_SETUP -#line 306 "lexer.l" +#line 307 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; return(MAYBE);} YY_BREAK case 59: /* rule 59 can match eol */ YY_RULE_SETUP -#line 307 "lexer.l" +#line 308 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(MAYBE);} YY_BREAK case 60: /* rule 60 can match eol */ YY_RULE_SETUP -#line 308 "lexer.l" +#line 309 "lexer.l" {SETLINENO; CLEARSPARKEARSTACK; politesse++; return(MAYBE); /* AIS: I added all the MAYBE cases. It seems that MAYBE has no simple Latin synonym. */} YY_BREAK case 61: YY_RULE_SETUP -#line 312 "lexer.l" +#line 313 "lexer.l" {return(NOT);} YY_BREAK case 62: YY_RULE_SETUP -#line 313 "lexer.l" +#line 314 "lexer.l" {return(NOT);} YY_BREAK case 63: YY_RULE_SETUP -#line 314 "lexer.l" +#line 315 "lexer.l" {return(NOT);} YY_BREAK case 64: YY_RULE_SETUP -#line 315 "lexer.l" +#line 316 "lexer.l" {return(NOT); /* AIS: CLC-INTERCAL again, this time it's ISO-8859-1 for the logical NOT symbol... */} YY_BREAK case 65: YY_RULE_SETUP -#line 317 "lexer.l" +#line 318 "lexer.l" {return(NOT); /* ... but my computer translates it to \xAC */} YY_BREAK case 66: YY_RULE_SETUP -#line 319 "lexer.l" +#line 320 "lexer.l" {return(ONCE);} YY_BREAK case 67: YY_RULE_SETUP -#line 320 "lexer.l" +#line 321 "lexer.l" {return(ONCE);} YY_BREAK case 68: YY_RULE_SETUP -#line 321 "lexer.l" +#line 322 "lexer.l" {return(AGAIN);} YY_BREAK case 69: YY_RULE_SETUP -#line 322 "lexer.l" +#line 323 "lexer.l" {return(AGAIN);} YY_BREAK case 70: /* rule 70 can match eol */ YY_RULE_SETUP -#line 324 "lexer.l" +#line 325 "lexer.l" {yylval.numval = myatoi(yytext); if (yylval.numval && yylval.numval < 100) return(OHOHSEVEN); @@ -1650,343 +1674,343 @@ YY_RULE_SETUP YY_BREAK case 71: YY_RULE_SETUP -#line 329 "lexer.l" +#line 330 "lexer.l" {return(SUB);} YY_BREAK case 72: /* rule 72 can match eol */ -#line 331 "lexer.l" +#line 332 "lexer.l" case 73: /* rule 73 can match eol */ YY_RULE_SETUP -#line 331 "lexer.l" +#line 332 "lexer.l" {return(BY);} YY_BREAK case 74: YY_RULE_SETUP -#line 333 "lexer.l" +#line 334 "lexer.l" {return(GETS);} YY_BREAK case 75: -#line 335 "lexer.l" +#line 336 "lexer.l" case 76: YY_RULE_SETUP -#line 335 "lexer.l" +#line 336 "lexer.l" {yylval.numval = GETS; return(GERUND);} YY_BREAK case 77: -#line 338 "lexer.l" +#line 339 "lexer.l" case 78: YY_RULE_SETUP -#line 338 "lexer.l" +#line 339 "lexer.l" {return(FORGET);} YY_BREAK case 79: -#line 340 "lexer.l" +#line 341 "lexer.l" case 80: YY_RULE_SETUP -#line 340 "lexer.l" +#line 341 "lexer.l" {yylval.numval = FORGET; return(GERUND);} YY_BREAK case 81: -#line 342 "lexer.l" +#line 343 "lexer.l" case 82: YY_RULE_SETUP -#line 342 "lexer.l" +#line 343 "lexer.l" {return(RESUME);} YY_BREAK case 83: -#line 344 "lexer.l" +#line 345 "lexer.l" case 84: YY_RULE_SETUP -#line 344 "lexer.l" +#line 345 "lexer.l" {yylval.numval = RESUME; return(GERUND);} YY_BREAK case 85: -#line 346 "lexer.l" +#line 347 "lexer.l" case 86: YY_RULE_SETUP -#line 346 "lexer.l" +#line 347 "lexer.l" {return(STASH);} YY_BREAK case 87: -#line 348 "lexer.l" +#line 349 "lexer.l" case 88: YY_RULE_SETUP -#line 348 "lexer.l" +#line 349 "lexer.l" {yylval.numval = STASH; return(GERUND);} YY_BREAK case 89: -#line 350 "lexer.l" +#line 351 "lexer.l" case 90: YY_RULE_SETUP -#line 350 "lexer.l" +#line 351 "lexer.l" {return(RETRIEVE);} YY_BREAK case 91: -#line 352 "lexer.l" +#line 353 "lexer.l" case 92: YY_RULE_SETUP -#line 352 "lexer.l" +#line 353 "lexer.l" {yylval.numval = RETRIEVE; return(GERUND);} YY_BREAK case 93: -#line 354 "lexer.l" +#line 355 "lexer.l" case 94: YY_RULE_SETUP -#line 354 "lexer.l" +#line 355 "lexer.l" {return(IGNORE);} YY_BREAK case 95: -#line 356 "lexer.l" +#line 357 "lexer.l" case 96: YY_RULE_SETUP -#line 356 "lexer.l" +#line 357 "lexer.l" {yylval.numval = IGNORE; return(GERUND);} YY_BREAK case 97: -#line 358 "lexer.l" +#line 359 "lexer.l" case 98: YY_RULE_SETUP -#line 358 "lexer.l" +#line 359 "lexer.l" {return(REMEMBER);} YY_BREAK case 99: -#line 360 "lexer.l" +#line 361 "lexer.l" case 100: YY_RULE_SETUP -#line 360 "lexer.l" +#line 361 "lexer.l" {yylval.numval = REMEMBER; return(GERUND);} YY_BREAK case 101: -#line 362 "lexer.l" +#line 363 "lexer.l" case 102: YY_RULE_SETUP -#line 362 "lexer.l" +#line 363 "lexer.l" {return(ABSTAIN);} YY_BREAK case 103: -#line 364 "lexer.l" +#line 365 "lexer.l" case 104: YY_RULE_SETUP -#line 364 "lexer.l" +#line 365 "lexer.l" {yylval.numval = ABSTAIN; return(GERUND);} YY_BREAK case 105: -#line 366 "lexer.l" +#line 367 "lexer.l" case 106: YY_RULE_SETUP -#line 366 "lexer.l" +#line 367 "lexer.l" {return(REINSTATE);} YY_BREAK case 107: -#line 368 "lexer.l" +#line 369 "lexer.l" case 108: YY_RULE_SETUP -#line 368 "lexer.l" +#line 369 "lexer.l" {yylval.numval = REINSTATE; return(GERUND);} YY_BREAK case 109: /* rule 109 can match eol */ -#line 370 "lexer.l" +#line 371 "lexer.l" case 110: /* rule 110 can match eol */ YY_RULE_SETUP -#line 370 "lexer.l" +#line 371 "lexer.l" {return(READ_OUT);} YY_BREAK case 111: -#line 372 "lexer.l" +#line 373 "lexer.l" case 112: /* rule 112 can match eol */ YY_RULE_SETUP -#line 372 "lexer.l" +#line 373 "lexer.l" {yylval.numval = READ_OUT; return(GERUND);} YY_BREAK case 113: /* rule 113 can match eol */ -#line 374 "lexer.l" +#line 375 "lexer.l" case 114: /* rule 114 can match eol */ YY_RULE_SETUP -#line 374 "lexer.l" +#line 375 "lexer.l" {return(WRITE_IN);} YY_BREAK case 115: -#line 376 "lexer.l" +#line 377 "lexer.l" case 116: /* rule 116 can match eol */ YY_RULE_SETUP -#line 376 "lexer.l" +#line 377 "lexer.l" {yylval.numval = WRITE_IN; return(GERUND);} YY_BREAK case 117: -#line 378 "lexer.l" -case 118: #line 379 "lexer.l" -case 119: +case 118: #line 380 "lexer.l" +case 119: +#line 381 "lexer.l" case 120: YY_RULE_SETUP -#line 380 "lexer.l" +#line 381 "lexer.l" {yylval.numval = UNKNOWN; return(GERUND); /* AIS: An idea stolen from CLC-INTERCAL. The Latin means literally 'remind' or 'mention'. */} YY_BREAK case 121: YY_RULE_SETUP -#line 383 "lexer.l" +#line 384 "lexer.l" {/* By AIS. I can't find a Latin translation for this. */ return(PIN);} YY_BREAK case 122: YY_RULE_SETUP -#line 385 "lexer.l" +#line 386 "lexer.l" {/* By AIS */ yylval.numval = PIN; return(GERUND);} YY_BREAK case 123: /* rule 123 can match eol */ -#line 387 "lexer.l" +#line 388 "lexer.l" case 124: /* rule 124 can match eol */ YY_RULE_SETUP -#line 387 "lexer.l" +#line 388 "lexer.l" {/* AIS */ yylval.numval = myatoi(yytext); return(NEXTFROMLABEL);} YY_BREAK case 125: /* rule 125 can match eol */ -#line 390 "lexer.l" +#line 391 "lexer.l" case 126: /* rule 126 can match eol */ YY_RULE_SETUP -#line 390 "lexer.l" +#line 391 "lexer.l" {/* AIS: 'next' is not a verb, so the Latin is invented */ return(NEXTFROMEXPR);} YY_BREAK case 127: -#line 393 "lexer.l" +#line 394 "lexer.l" case 128: /* rule 128 can match eol */ YY_RULE_SETUP -#line 393 "lexer.l" +#line 394 "lexer.l" {/* AIS */ yylval.numval = NEXTFROMLABEL; return(GERUND);} YY_BREAK case 129: /* rule 129 can match eol */ -#line 395 "lexer.l" +#line 396 "lexer.l" case 130: /* rule 130 can match eol */ YY_RULE_SETUP -#line 395 "lexer.l" +#line 396 "lexer.l" {/* AIS */ yylval.numval = myatoi(yytext); return(COME_FROM);} YY_BREAK case 131: /* rule 131 can match eol */ -#line 398 "lexer.l" +#line 399 "lexer.l" case 132: /* rule 132 can match eol */ YY_RULE_SETUP -#line 398 "lexer.l" +#line 399 "lexer.l" {/* AIS */ return(COMPUCOME);} YY_BREAK case 133: -#line 400 "lexer.l" +#line 401 "lexer.l" case 134: /* rule 134 can match eol */ YY_RULE_SETUP -#line 400 "lexer.l" +#line 401 "lexer.l" {yylval.numval = COME_FROM; return(GERUND);} YY_BREAK case 135: -#line 402 "lexer.l" +#line 403 "lexer.l" case 136: YY_RULE_SETUP -#line 402 "lexer.l" +#line 403 "lexer.l" {stbeginline = 0; return(NEXT);} YY_BREAK case 137: -#line 404 "lexer.l" +#line 405 "lexer.l" case 138: YY_RULE_SETUP -#line 404 "lexer.l" +#line 405 "lexer.l" {yylval.numval = NEXT; return(GERUND);} YY_BREAK case 139: YY_RULE_SETUP -#line 405 "lexer.l" +#line 406 "lexer.l" {return(FROM); /* AIS: Latin is 'A', which confuses the rest of the parser */} YY_BREAK case 140: -#line 408 "lexer.l" -case 141: #line 409 "lexer.l" +case 141: +#line 410 "lexer.l" case 142: /* rule 142 can match eol */ YY_RULE_SETUP -#line 409 "lexer.l" +#line 410 "lexer.l" {return(GIVE_UP);} YY_BREAK case 143: /* rule 143 can match eol */ -#line 411 "lexer.l" +#line 412 "lexer.l" case 144: /* rule 144 can match eol */ YY_RULE_SETUP -#line 411 "lexer.l" +#line 412 "lexer.l" {return(TRY_AGAIN);} YY_BREAK case 145: YY_RULE_SETUP -#line 412 "lexer.l" +#line 413 "lexer.l" {return(WHILE); /* AIS. Latin for this is needed. */} YY_BREAK case 146: -#line 414 "lexer.l" +#line 415 "lexer.l" case 147: YY_RULE_SETUP -#line 414 "lexer.l" +#line 415 "lexer.l" {yylval.numval = WHILE; return(GERUND);} YY_BREAK case 148: /* rule 148 can match eol */ YY_RULE_SETUP -#line 415 "lexer.l" +#line 416 "lexer.l" {yylval.numval = TRY_AGAIN; return(GERUND);} YY_BREAK case 149: /* rule 149 can match eol */ -#line 417 "lexer.l" +#line 418 "lexer.l" case 150: /* rule 150 can match eol */ YY_RULE_SETUP -#line 417 "lexer.l" +#line 418 "lexer.l" {return(GO_BACK);} YY_BREAK case 151: /* rule 151 can match eol */ -#line 419 "lexer.l" +#line 420 "lexer.l" case 152: /* rule 152 can match eol */ YY_RULE_SETUP -#line 419 "lexer.l" +#line 420 "lexer.l" {yylval.numval = GO_BACK; return(GERUND);} YY_BREAK case 153: /* rule 153 can match eol */ -#line 421 "lexer.l" +#line 422 "lexer.l" case 154: /* rule 154 can match eol */ YY_RULE_SETUP -#line 421 "lexer.l" +#line 422 "lexer.l" {return(GO_AHEAD);} YY_BREAK case 155: /* rule 155 can match eol */ YY_RULE_SETUP -#line 422 "lexer.l" +#line 423 "lexer.l" {yylval.numval = GO_AHEAD; return(GERUND); /* AIS: I'm having a few deponent troubles with the Latin, so there are no Latin gerunds around here. Besides, the Latin @@ -1995,48 +2019,48 @@ YY_RULE_SETUP YY_BREAK case 156: /* rule 156 can match eol */ -#line 428 "lexer.l" +#line 429 "lexer.l" case 157: /* rule 157 can match eol */ YY_RULE_SETUP -#line 428 "lexer.l" +#line 429 "lexer.l" {yylval.numval = myatoi(yytext); return(CREATE);} YY_BREAK case 158: -#line 430 "lexer.l" +#line 431 "lexer.l" case 159: YY_RULE_SETUP -#line 430 "lexer.l" +#line 431 "lexer.l" {return(COMPUCREATE);} YY_BREAK case 160: -#line 432 "lexer.l" -case 161: #line 433 "lexer.l" +case 161: +#line 434 "lexer.l" case 162: YY_RULE_SETUP -#line 433 "lexer.l" +#line 434 "lexer.l" {yylval.numval = CREATE; return(GERUND);} YY_BREAK case 163: YY_RULE_SETUP -#line 435 "lexer.l" +#line 436 "lexer.l" {return(INTERSECTION);} YY_BREAK case 164: /* rule 164 can match eol */ YY_RULE_SETUP -#line 437 "lexer.l" +#line 438 "lexer.l" ; YY_BREAK case 165: YY_RULE_SETUP -#line 438 "lexer.l" +#line 439 "lexer.l" {/* AIS */ yylval.numval = *yytext; return(UNKNOWNID);} YY_BREAK case 166: YY_RULE_SETUP -#line 439 "lexer.l" +#line 440 "lexer.l" {/* AIS */ yylval.numval = yytext[0]*256 + yytext[3]; if(yytext[0] > yytext[3]) yylval.numval = yytext[0] + yytext[3]*256; @@ -2044,17 +2068,17 @@ YY_RULE_SETUP YY_BREAK case 167: YY_RULE_SETUP -#line 443 "lexer.l" +#line 444 "lexer.l" {yylval.numval = yytext[0]; /* AIS: The line below for debug */ if(yydebug) fprintf(stdout, "yylex: bad char %#x\n",(unsigned char)yytext[0]); return(BADCHAR);} YY_BREAK case 168: YY_RULE_SETUP -#line 448 "lexer.l" +#line 449 "lexer.l" ECHO; YY_BREAK -#line 2058 "lexer.c" +#line 2082 "lexer.c" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -3052,7 +3076,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 448 "lexer.l" +#line 449 "lexer.l" @@ -3078,7 +3102,7 @@ int lexer(void) return(tok); } -static int myatoi(char *text) /* AIS */ +static int myatoi(const char *text) /* AIS */ { #define MAXTEXT 100 static char buf[MAXTEXT]; @@ -3101,7 +3125,7 @@ static int myatoi(char *text) /* AIS */ return atoi(thinbuf); } -void yyerror(char *errtype) +void yyerror(const char *errtype) { #ifdef MAIN (void) printf("lextest: lexer error: %s.\n", errtype); diff --git a/prebuilt/oil-oil.c b/prebuilt/oil-oil.c index af62322..6329d8c 100644 --- a/prebuilt/oil-oil.c +++ b/prebuilt/oil-oil.c @@ -101,7 +101,7 @@ /* Define strdup if it isn't available */ #ifndef HAVE_STRDUP -char* strdup(char* s) +char* strdup(const char* s) { char* t=malloc(strlen(s)+1); if(t) strcpy(t,s); @@ -124,12 +124,12 @@ struct ickstype sequence of lvals (=0) or rvals (=1) this is from the root; depth bits from the end are relevant, and the bit nearest the root is least significant */ - char* condition; /* Points to a constant string; the condition to generate + const char* condition; /* Points to a constant string; the condition to generate on that node. Could also point to something the lexer mallocs, but then the lexer has to keep track of being able to free it again. If this is NULL, it means that there isn't a condition other than maybe mustbemesh */ - char* nodetypename; /* The name of the type of node this condition matches, + const char* nodetypename; /* The name of the type of node this condition matches, or NULL for a LEXERLEAF */ mybool usec; /* Whether to append the value of c to the condition */ mybool mustbemesh; /* Must this node be a mesh or mesh32? */ @@ -153,8 +153,8 @@ char optname[MAXOPTNAMELEN]="undefined"; typedef struct ickstype *YYSTYPE; -void splitend(); -void splitstart(); +void splitend(void); +void splitstart(void); void treedepthup(YYSTYPE, mybool); void treefree(YYSTYPE); @@ -2689,7 +2689,7 @@ int countungetc(int c, FILE* f) return c; } -void splitstart() +void splitstart(void) { static char fname[]="oilout00.c"; if(filenumber>255) @@ -2711,7 +2711,7 @@ void splitstart() " node *tp;\n", filenumber); } -void splitend() +void splitend(void) { /* Disabling warnings about unused variables. gcc will optimize this right out, and in any case the raise(SIGSEGV) will be unreachable (but will diff --git a/prebuilt/parser.c b/prebuilt/parser.c index 0d70329..448b5db 100644 --- a/prebuilt/parser.c +++ b/prebuilt/parser.c @@ -306,7 +306,7 @@ #include "feh.h" #include "ick_lose.h" -extern int yyerror(char*); +extern int yyerror(const char*); /* Intervene our ick_first-stage lexer. */ extern int lexer(void);