diff options
Diffstat (limited to 'res/ael/ael_lex.c')
-rw-r--r-- | res/ael/ael_lex.c | 668 |
1 files changed, 336 insertions, 332 deletions
diff --git a/res/ael/ael_lex.c b/res/ael/ael_lex.c index 0ae6a7754..6a3e2c16b 100644 --- a/res/ael/ael_lex.c +++ b/res/ael/ael_lex.c @@ -9,7 +9,7 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 31 +#define YY_FLEX_SUBMINOR_VERSION 33 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -32,7 +32,15 @@ /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ -#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L +#if __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 +#endif + #include <inttypes.h> typedef int8_t flex_int8_t; typedef uint8_t flex_uint8_t; @@ -155,6 +163,10 @@ int ael_yylex_init (yyscan_t* scanner); #define YY_BUF_SIZE 16384 #endif +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) + #ifndef YY_TYPEDEF_YY_BUFFER_STATE #define YY_TYPEDEF_YY_BUFFER_STATE typedef struct yy_buffer_state *YY_BUFFER_STATE; @@ -400,62 +412,62 @@ static yyconst flex_int32_t yy_ec[256] = 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 5, 39, 40, 41, 42, 5, 43, 44, - 5, 5, 45, 46, 47, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1 + 5, 5, 45, 46, 47, 1, 1, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48, 48, 48, 48, 48, 48, + 48, 48, 48, 48, 48 } ; -static yyconst flex_int32_t yy_meta[48] = +static yyconst flex_int32_t yy_meta[49] = { 0, 1, 1, 2, 1, 3, 4, 3, 1, 1, 1, 5, 1, 3, 1, 1, 1, 3, 1, 3, 3, - 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 1, 3 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 1, 3, 3 } ; static yyconst flex_int16_t yy_base[257] = { 0, - 0, 0, 39, 42, 81, 120, 159, 198, 47, 54, - 319, 985, 316, 985, 313, 0, 285, 985, 985, 985, - 985, 42, 985, 985, 298, 985, 290, 274, 31, 285, - 32, 274, 33, 279, 45, 267, 271, 284, 283, 48, - 262, 274, 985, 985, 985, 73, 985, 985, 89, 985, - 237, 985, 985, 985, 276, 315, 985, 985, 985, 354, - 985, 300, 985, 66, 300, 297, 0, 264, 0, 401, - 985, 259, 268, 64, 258, 265, 252, 247, 248, 249, - 250, 242, 245, 261, 243, 253, 242, 251, 250, 233, - 237, 51, 241, 240, 103, 985, 985, 137, 985, 142, - - 176, 181, 439, 985, 985, 985, 478, 517, 556, 595, - 634, 985, 985, 985, 673, 985, 712, 751, 790, 829, - 267, 985, 103, 985, 104, 985, 244, 0, 876, 227, - 244, 239, 240, 223, 240, 235, 230, 233, 0, 232, - 218, 213, 222, 214, 216, 211, 225, 205, 201, 215, - 213, 197, 197, 203, 202, 196, 201, 0, 203, 100, - 190, 0, 190, 194, 206, 0, 0, 192, 186, 182, - 0, 188, 180, 189, 178, 170, 174, 187, 184, 167, - 182, 0, 0, 156, 163, 161, 169, 167, 158, 161, - 156, 152, 0, 0, 138, 141, 134, 137, 136, 0, - - 135, 135, 115, 113, 113, 123, 0, 109, 0, 107, - 117, 107, 0, 112, 0, 111, 110, 92, 0, 105, - 0, 95, 0, 85, 60, 0, 61, 48, 117, 0, - 0, 45, 37, 0, 0, 0, 168, 0, 0, 0, - 50, 985, 985, 922, 927, 932, 937, 940, 945, 950, - 955, 960, 964, 969, 974, 979 + 0, 0, 40, 43, 82, 121, 160, 199, 48, 55, + 320, 986, 317, 986, 314, 0, 286, 986, 986, 986, + 986, 43, 986, 986, 299, 986, 291, 275, 32, 286, + 33, 275, 34, 280, 46, 268, 272, 285, 284, 49, + 263, 275, 986, 986, 986, 74, 986, 986, 90, 986, + 238, 986, 986, 986, 277, 316, 986, 986, 986, 355, + 986, 301, 986, 67, 301, 298, 0, 265, 0, 402, + 986, 260, 269, 65, 259, 266, 253, 248, 249, 250, + 251, 243, 246, 262, 244, 254, 243, 252, 251, 234, + 238, 52, 242, 241, 104, 986, 986, 138, 986, 143, + + 177, 182, 440, 986, 986, 986, 479, 518, 557, 596, + 635, 986, 986, 986, 674, 986, 713, 752, 791, 830, + 268, 986, 104, 986, 105, 986, 245, 0, 877, 228, + 245, 240, 241, 224, 241, 236, 231, 234, 0, 233, + 219, 214, 223, 215, 217, 212, 226, 206, 202, 216, + 214, 198, 198, 204, 203, 197, 202, 0, 204, 101, + 191, 0, 191, 195, 207, 0, 0, 193, 187, 183, + 0, 189, 181, 190, 179, 171, 175, 188, 185, 168, + 183, 0, 0, 157, 164, 162, 170, 168, 159, 162, + 157, 153, 0, 0, 139, 142, 135, 138, 137, 0, + + 136, 136, 116, 114, 114, 124, 0, 110, 0, 108, + 118, 108, 0, 113, 0, 112, 111, 93, 0, 106, + 0, 96, 0, 86, 61, 0, 62, 49, 118, 0, + 0, 46, 38, 0, 0, 0, 169, 0, 0, 0, + 51, 986, 986, 923, 928, 933, 938, 941, 946, 951, + 956, 961, 965, 970, 975, 980 } ; static yyconst flex_int16_t yy_def[257] = @@ -490,240 +502,240 @@ static yyconst flex_int16_t yy_def[257] = 243, 243, 243, 243, 243, 243 } ; -static yyconst flex_int16_t yy_nxt[1033] = +static yyconst flex_int16_t yy_nxt[1035] = { 0, 12, 13, 14, 15, 16, 16, 17, 18, 19, 20, 16, 21, 22, 23, 24, 25, 16, 26, 16, 16, - 12, 16, 27, 28, 29, 30, 31, 32, 33, 34, + 16, 16, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 16, 37, 38, 16, 16, 39, 40, 41, - 16, 16, 42, 16, 43, 44, 45, 47, 48, 63, - 47, 48, 69, 74, 70, 242, 63, 64, 47, 49, - 50, 47, 49, 50, 64, 77, 81, 75, 124, 82, - 91, 78, 84, 85, 92, 79, 125, 239, 126, 151, - 86, 96, 97, 47, 238, 50, 47, 236, 50, 52, - 53, 152, 96, 98, 99, 54, 235, 100, 101, 234, - - 52, 55, 53, 132, 133, 124, 124, 233, 100, 98, - 102, 96, 97, 243, 125, 243, 243, 96, 237, 99, - 237, 232, 96, 98, 99, 52, 184, 53, 52, 53, - 185, 231, 230, 100, 54, 102, 229, 228, 227, 52, - 55, 53, 226, 225, 224, 100, 101, 96, 223, 99, - 96, 97, 222, 221, 220, 219, 100, 98, 102, 218, - 217, 96, 98, 99, 52, 216, 53, 57, 58, 237, - 59, 237, 215, 240, 214, 213, 212, 211, 57, 60, - 61, 100, 210, 102, 96, 97, 96, 209, 99, 96, - 97, 208, 207, 206, 205, 96, 98, 99, 204, 203, - - 96, 98, 99, 57, 202, 61, 57, 58, 201, 59, - 200, 199, 198, 197, 196, 195, 194, 57, 60, 61, - 96, 193, 99, 192, 191, 96, 190, 99, 189, 188, - 187, 186, 183, 182, 181, 180, 179, 178, 177, 176, - 175, 174, 57, 173, 61, 104, 105, 172, 171, 170, - 169, 106, 168, 167, 166, 165, 104, 107, 105, 164, - 163, 162, 161, 160, 159, 158, 157, 156, 155, 122, - 154, 153, 150, 149, 148, 147, 146, 145, 144, 143, - 142, 104, 141, 105, 108, 109, 140, 139, 138, 137, - 110, 136, 135, 134, 131, 108, 107, 109, 130, 127, - - 66, 65, 122, 94, 93, 90, 89, 88, 87, 83, - 80, 76, 73, 72, 71, 68, 66, 65, 243, 243, - 108, 243, 109, 112, 113, 243, 114, 243, 243, 243, - 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, + 16, 16, 42, 16, 43, 44, 45, 16, 47, 48, + 63, 47, 48, 69, 74, 70, 242, 63, 64, 47, + 49, 50, 47, 49, 50, 64, 77, 81, 75, 124, + 82, 91, 78, 84, 85, 92, 79, 125, 239, 126, + 151, 86, 96, 97, 47, 238, 50, 47, 236, 50, + 52, 53, 152, 96, 98, 99, 54, 235, 100, 101, + + 234, 52, 55, 53, 132, 133, 124, 124, 233, 100, + 98, 102, 96, 97, 243, 125, 243, 243, 96, 237, + 99, 237, 232, 96, 98, 99, 52, 184, 53, 52, + 53, 185, 231, 230, 100, 54, 102, 229, 228, 227, + 52, 55, 53, 226, 225, 224, 100, 101, 96, 223, + 99, 96, 97, 222, 221, 220, 219, 100, 98, 102, + 218, 217, 96, 98, 99, 52, 216, 53, 57, 58, + 237, 59, 237, 215, 240, 214, 213, 212, 211, 57, + 60, 61, 100, 210, 102, 96, 97, 96, 209, 99, + 96, 97, 208, 207, 206, 205, 96, 98, 99, 204, + + 203, 96, 98, 99, 57, 202, 61, 57, 58, 201, + 59, 200, 199, 198, 197, 196, 195, 194, 57, 60, + 61, 96, 193, 99, 192, 191, 96, 190, 99, 189, + 188, 187, 186, 183, 182, 181, 180, 179, 178, 177, + 176, 175, 174, 57, 173, 61, 104, 105, 172, 171, + 170, 169, 106, 168, 167, 166, 165, 104, 107, 105, + 164, 163, 162, 161, 160, 159, 158, 157, 156, 155, + 122, 154, 153, 150, 149, 148, 147, 146, 145, 144, + 143, 142, 104, 141, 105, 108, 109, 140, 139, 138, + 137, 110, 136, 135, 134, 131, 108, 107, 109, 130, + + 127, 66, 65, 122, 94, 93, 90, 89, 88, 87, + 83, 80, 76, 73, 72, 71, 68, 66, 65, 243, + 243, 108, 243, 109, 112, 113, 243, 114, 243, 243, + 243, 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 112, - 243, 116, 117, 118, 243, 119, 243, 243, 243, 243, - 243, 243, 243, 117, 115, 120, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 117, 243, + 112, 243, 116, 117, 118, 243, 119, 243, 243, 243, + 243, 243, 243, 243, 117, 115, 120, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 117, - 120, 128, 128, 243, 128, 243, 243, 243, 128, 128, - 128, 243, 128, 243, 128, 128, 128, 243, 128, 243, - 243, 128, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 120, 128, 128, 243, 128, 243, 243, 243, 128, + 128, 128, 243, 128, 243, 128, 128, 128, 243, 128, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 128, 104, 105, 243, - 243, 243, 243, 106, 243, 243, 243, 243, 104, 107, - 105, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 128, 104, 105, + 243, 243, 243, 243, 106, 243, 243, 243, 243, 104, + 107, 105, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 104, 243, 105, 108, 109, 243, 243, - 243, 243, 110, 243, 243, 243, 243, 108, 107, 109, + 243, 243, 243, 243, 104, 243, 105, 108, 109, 243, + 243, 243, 243, 110, 243, 243, 243, 243, 108, 107, + 109, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 108, 243, 109, 104, 105, 243, 243, + 243, 243, 106, 243, 243, 243, 243, 104, 107, 105, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 108, 243, 109, 104, 105, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 104, 243, 105, 104, 105, 243, 243, 243, 243, 106, 243, 243, 243, 243, 104, 107, 105, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 104, 243, 105, 104, 105, 243, 243, 243, 243, 106, 243, 243, 243, 243, 104, 107, 105, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - - 104, 243, 105, 104, 105, 243, 243, 243, 243, 106, - 243, 243, 243, 243, 104, 107, 105, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 104, - 243, 105, 112, 113, 243, 114, 243, 243, 243, 243, - 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, + 104, 243, 105, 112, 113, 243, 114, 243, 243, 243, + 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 112, 243, - 116, 117, 118, 243, 119, 243, 243, 243, 243, 243, - 243, 243, 117, 115, 120, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 112, + 243, 116, 117, 118, 243, 119, 243, 243, 243, 243, + 243, 243, 243, 117, 115, 120, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 117, 243, 120, + 243, 243, 243, 243, 243, 243, 243, 243, 117, 243, + 120, 112, 113, 243, 114, 243, 243, 243, 243, 243, + 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, + 243, 243, 243, 243, 243, 243, 243, 112, 243, 116, 112, 113, 243, 114, 243, 243, 243, 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 112, 243, 116, 112, + 113, 243, 114, 243, 243, 243, 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 112, 243, 116, 112, 113, - 243, 114, 243, 243, 243, 243, 243, 243, 243, 112, 115, 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 112, 243, 116, 112, 113, 243, - 114, 243, 243, 243, 243, 243, 243, 243, 112, 115, - 116, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243, 243, 112, 243, 116, 128, 128, 243, 128, - 243, 243, 243, 128, 128, 128, 243, 128, 243, 128, - 128, 128, 243, 128, 243, 243, 128, 243, 243, 243, + 243, 243, 243, 243, 112, 243, 116, 128, 128, 243, + 128, 243, 243, 243, 128, 128, 128, 243, 128, 243, + 128, 128, 128, 243, 128, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 128, 46, 46, 46, 46, 46, 51, 51, 51, - 51, 51, 56, 56, 56, 56, 56, 62, 62, 62, - 62, 62, 67, 67, 67, 95, 95, 95, 95, 95, - 103, 103, 103, 103, 103, 111, 111, 111, 111, 111, - 121, 121, 121, 121, 123, 123, 123, 123, 123, 129, - 243, 129, 129, 129, 128, 243, 128, 128, 128, 241, - 241, 241, 243, 241, 11, 243, 243, 243, 243, 243, + 243, 243, 128, 46, 46, 46, 46, 46, 51, 51, + 51, 51, 51, 56, 56, 56, 56, 56, 62, 62, + 62, 62, 62, 67, 67, 67, 95, 95, 95, 95, + 95, 103, 103, 103, 103, 103, 111, 111, 111, 111, + 111, 121, 121, 121, 121, 123, 123, 123, 123, 123, + 129, 243, 129, 129, 129, 128, 243, 128, 128, 128, + 241, 241, 241, 243, 241, 11, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243 + 243, 243, 243, 243 } ; -static yyconst flex_int16_t yy_chk[1033] = +static yyconst flex_int16_t yy_chk[1035] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 3, 3, 9, - 4, 4, 22, 29, 22, 241, 10, 9, 3, 3, - 3, 4, 4, 4, 10, 31, 33, 29, 64, 33, - 40, 31, 35, 35, 40, 31, 64, 233, 64, 92, - 35, 46, 46, 3, 232, 3, 4, 228, 4, 5, - 5, 92, 46, 46, 46, 5, 227, 49, 49, 225, - - 5, 5, 5, 74, 74, 123, 125, 224, 49, 49, - 49, 95, 95, 123, 125, 123, 125, 46, 229, 46, - 229, 222, 95, 95, 95, 5, 160, 5, 6, 6, - 160, 220, 218, 49, 6, 49, 217, 216, 214, 6, - 6, 6, 212, 211, 210, 98, 98, 95, 208, 95, - 100, 100, 206, 205, 204, 203, 98, 98, 98, 202, - 201, 100, 100, 100, 6, 199, 6, 7, 7, 237, - 7, 237, 198, 237, 197, 196, 195, 192, 7, 7, - 7, 98, 191, 98, 101, 101, 100, 190, 100, 102, - 102, 189, 188, 187, 186, 101, 101, 101, 185, 184, - - 102, 102, 102, 7, 181, 7, 8, 8, 180, 8, - 179, 178, 177, 176, 175, 174, 173, 8, 8, 8, - 101, 172, 101, 170, 169, 102, 168, 102, 165, 164, - 163, 161, 159, 157, 156, 155, 154, 153, 152, 151, - 150, 149, 8, 148, 8, 51, 51, 147, 146, 145, - 144, 51, 143, 142, 141, 140, 51, 51, 51, 138, - 137, 136, 135, 134, 133, 132, 131, 130, 127, 121, - 94, 93, 91, 90, 89, 88, 87, 86, 85, 84, - 83, 51, 82, 51, 55, 55, 81, 80, 79, 78, - 55, 77, 76, 75, 73, 55, 55, 55, 72, 68, - - 66, 65, 62, 42, 41, 39, 38, 37, 36, 34, - 32, 30, 28, 27, 25, 17, 15, 13, 11, 0, - 55, 0, 55, 56, 56, 0, 56, 0, 0, 0, - 0, 0, 0, 0, 56, 56, 56, 0, 0, 0, + 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, + 9, 4, 4, 22, 29, 22, 241, 10, 9, 3, + 3, 3, 4, 4, 4, 10, 31, 33, 29, 64, + 33, 40, 31, 35, 35, 40, 31, 64, 233, 64, + 92, 35, 46, 46, 3, 232, 3, 4, 228, 4, + 5, 5, 92, 46, 46, 46, 5, 227, 49, 49, + + 225, 5, 5, 5, 74, 74, 123, 125, 224, 49, + 49, 49, 95, 95, 123, 125, 123, 125, 46, 229, + 46, 229, 222, 95, 95, 95, 5, 160, 5, 6, + 6, 160, 220, 218, 49, 6, 49, 217, 216, 214, + 6, 6, 6, 212, 211, 210, 98, 98, 95, 208, + 95, 100, 100, 206, 205, 204, 203, 98, 98, 98, + 202, 201, 100, 100, 100, 6, 199, 6, 7, 7, + 237, 7, 237, 198, 237, 197, 196, 195, 192, 7, + 7, 7, 98, 191, 98, 101, 101, 100, 190, 100, + 102, 102, 189, 188, 187, 186, 101, 101, 101, 185, + + 184, 102, 102, 102, 7, 181, 7, 8, 8, 180, + 8, 179, 178, 177, 176, 175, 174, 173, 8, 8, + 8, 101, 172, 101, 170, 169, 102, 168, 102, 165, + 164, 163, 161, 159, 157, 156, 155, 154, 153, 152, + 151, 150, 149, 8, 148, 8, 51, 51, 147, 146, + 145, 144, 51, 143, 142, 141, 140, 51, 51, 51, + 138, 137, 136, 135, 134, 133, 132, 131, 130, 127, + 121, 94, 93, 91, 90, 89, 88, 87, 86, 85, + 84, 83, 51, 82, 51, 55, 55, 81, 80, 79, + 78, 55, 77, 76, 75, 73, 55, 55, 55, 72, + + 68, 66, 65, 62, 42, 41, 39, 38, 37, 36, + 34, 32, 30, 28, 27, 25, 17, 15, 13, 11, + 0, 55, 0, 55, 56, 56, 0, 56, 0, 0, + 0, 0, 0, 0, 0, 56, 56, 56, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, - 0, 56, 60, 60, 0, 60, 0, 0, 0, 0, - 0, 0, 0, 60, 60, 60, 0, 0, 0, 0, + 56, 0, 56, 60, 60, 0, 60, 0, 0, 0, + 0, 0, 0, 0, 60, 60, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, - 60, 70, 70, 0, 70, 0, 0, 0, 70, 70, - 70, 0, 70, 0, 70, 70, 70, 0, 70, 0, - 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 60, 70, 70, 0, 70, 0, 0, 0, 70, + 70, 70, 0, 70, 0, 70, 70, 70, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 70, 103, 103, 0, - 0, 0, 0, 103, 0, 0, 0, 0, 103, 103, - 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 103, 0, 103, 107, 107, 0, 0, - 0, 0, 107, 0, 0, 0, 0, 107, 107, 107, - + 0, 0, 0, 0, 0, 0, 0, 70, 103, 103, + 0, 0, 0, 0, 103, 0, 0, 0, 0, 103, + 103, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 103, 0, 103, 107, 107, 0, + 0, 0, 0, 107, 0, 0, 0, 0, 107, 107, + + 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 107, 0, 107, 108, 108, 0, 0, 0, - 0, 108, 0, 0, 0, 0, 108, 108, 108, 0, + 0, 0, 0, 107, 0, 107, 108, 108, 0, 0, + 0, 0, 108, 0, 0, 0, 0, 108, 108, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 108, 0, 108, 109, 109, 0, 0, 0, 0, - 109, 0, 0, 0, 0, 109, 109, 109, 0, 0, + 0, 0, 108, 0, 108, 109, 109, 0, 0, 0, + 0, 109, 0, 0, 0, 0, 109, 109, 109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 109, 0, 109, 110, 110, 0, 0, 0, 0, 110, - 0, 0, 0, 0, 110, 110, 110, 0, 0, 0, + 0, 109, 0, 109, 110, 110, 0, 0, 0, 0, + 110, 0, 0, 0, 0, 110, 110, 110, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, - 0, 110, 111, 111, 0, 111, 0, 0, 0, 0, - 0, 0, 0, 111, 111, 111, 0, 0, 0, 0, + 110, 0, 110, 111, 111, 0, 111, 0, 0, 0, + 0, 0, 0, 0, 111, 111, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 111, 0, - 111, 115, 115, 0, 115, 0, 0, 0, 0, 0, - 0, 0, 115, 115, 115, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, + 0, 111, 115, 115, 0, 115, 0, 0, 0, 0, + 0, 0, 0, 115, 115, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 115, 0, 115, - 117, 117, 0, 117, 0, 0, 0, 0, 0, 0, - 0, 117, 117, 117, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 115, 0, + 115, 117, 117, 0, 117, 0, 0, 0, 0, 0, + 0, 0, 117, 117, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 117, 0, 117, 118, - 118, 0, 118, 0, 0, 0, 0, 0, 0, 0, - 118, 118, 118, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 117, 0, 117, + 118, 118, 0, 118, 0, 0, 0, 0, 0, 0, + 0, 118, 118, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 118, 0, 118, 119, 119, + 0, 0, 0, 0, 0, 0, 118, 0, 118, 119, - 0, 119, 0, 0, 0, 0, 0, 0, 0, 119, - 119, 119, 0, 0, 0, 0, 0, 0, 0, 0, + 119, 0, 119, 0, 0, 0, 0, 0, 0, 0, + 119, 119, 119, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 119, 0, 119, 120, 120, 0, - 120, 0, 0, 0, 0, 0, 0, 0, 120, 120, - 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 119, 0, 119, 120, 120, + 0, 120, 0, 0, 0, 0, 0, 0, 0, 120, + 120, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 120, 0, 120, 129, 129, 0, 129, - 0, 0, 0, 129, 129, 129, 0, 129, 0, 129, - 129, 129, 0, 129, 0, 0, 129, 0, 0, 0, + 0, 0, 0, 0, 120, 0, 120, 129, 129, 0, + 129, 0, 0, 0, 129, 129, 129, 0, 129, 0, + 129, 129, 129, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 129, 244, 244, 244, 244, 244, 245, 245, 245, - 245, 245, 246, 246, 246, 246, 246, 247, 247, 247, - 247, 247, 248, 248, 248, 249, 249, 249, 249, 249, - 250, 250, 250, 250, 250, 251, 251, 251, 251, 251, - 252, 252, 252, 252, 253, 253, 253, 253, 253, 254, - 0, 254, 254, 254, 255, 0, 255, 255, 255, 256, - 256, 256, 0, 256, 243, 243, 243, 243, 243, 243, + 0, 0, 129, 244, 244, 244, 244, 244, 245, 245, + 245, 245, 245, 246, 246, 246, 246, 246, 247, 247, + 247, 247, 247, 248, 248, 248, 249, 249, 249, 249, + 249, 250, 250, 250, 250, 250, 251, 251, 251, 251, + 251, 252, 252, 252, 252, 253, 253, 253, 253, 253, + 254, 0, 254, 254, 254, 255, 0, 255, 255, 255, + 256, 256, 256, 0, 256, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, 243, - 243, 243 + 243, 243, 243, 243 } ; /* The intent behind this definition is that it'll catch @@ -892,7 +904,7 @@ static void pbcwhere(const char *text, int *line, int *col ) #define STORE_POS #define STORE_LOC #endif -#line 895 "ael_lex.c" +#line 907 "ael_lex.c" #define INITIAL 0 #define paren 1 @@ -1102,11 +1114,9 @@ static int input (yyscan_t yyscanner ); #ifndef YY_DECL #define YY_DECL_IS_OURS 1 -extern int ael_yylex \ - (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner); +extern int ael_yylex (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner); -#define YY_DECL int ael_yylex \ - (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner) +#define YY_DECL int ael_yylex (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner) #endif /* !YY_DECL */ /* Code executed at the beginning of each rule, after yytext and yyleng @@ -1133,18 +1143,18 @@ YY_DECL register int yy_act; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; -#line 181 "ael.flex" +#line 183 "ael.flex" -#line 1139 "ael_lex.c" +#line 1149 "ael_lex.c" yylval = yylval_param; yylloc = yylloc_param; - if ( yyg->yy_init ) + if ( !yyg->yy_init ) { - yyg->yy_init = 0; + yyg->yy_init = 1; #ifdef YY_USER_INIT YY_USER_INIT; @@ -1227,260 +1237,260 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 183 "ael.flex" +#line 185 "ael.flex" { STORE_POS; return LC;} YY_BREAK case 2: YY_RULE_SETUP -#line 184 "ael.flex" +#line 186 "ael.flex" { STORE_POS; return RC;} YY_BREAK case 3: YY_RULE_SETUP -#line 185 "ael.flex" +#line 187 "ael.flex" { STORE_POS; return LP;} YY_BREAK case 4: YY_RULE_SETUP -#line 186 "ael.flex" +#line 188 "ael.flex" { STORE_POS; return RP;} YY_BREAK case 5: YY_RULE_SETUP -#line 187 "ael.flex" +#line 189 "ael.flex" { STORE_POS; return SEMI;} YY_BREAK case 6: YY_RULE_SETUP -#line 188 "ael.flex" +#line 190 "ael.flex" { STORE_POS; return EQ;} YY_BREAK case 7: YY_RULE_SETUP -#line 189 "ael.flex" +#line 191 "ael.flex" { STORE_POS; return COMMA;} YY_BREAK case 8: YY_RULE_SETUP -#line 190 "ael.flex" +#line 192 "ael.flex" { STORE_POS; return COLON;} YY_BREAK case 9: YY_RULE_SETUP -#line 191 "ael.flex" +#line 193 "ael.flex" { STORE_POS; return AMPER;} YY_BREAK case 10: YY_RULE_SETUP -#line 192 "ael.flex" +#line 194 "ael.flex" { STORE_POS; return BAR;} YY_BREAK case 11: YY_RULE_SETUP -#line 193 "ael.flex" +#line 195 "ael.flex" { STORE_POS; return EXTENMARK;} YY_BREAK case 12: YY_RULE_SETUP -#line 194 "ael.flex" +#line 196 "ael.flex" { STORE_POS; return AT;} YY_BREAK case 13: YY_RULE_SETUP -#line 195 "ael.flex" +#line 197 "ael.flex" {/*comment*/} YY_BREAK case 14: YY_RULE_SETUP -#line 196 "ael.flex" +#line 198 "ael.flex" { STORE_POS; return KW_CONTEXT;} YY_BREAK case 15: YY_RULE_SETUP -#line 197 "ael.flex" +#line 199 "ael.flex" { STORE_POS; return KW_ABSTRACT;} YY_BREAK case 16: YY_RULE_SETUP -#line 198 "ael.flex" +#line 200 "ael.flex" { STORE_POS; return KW_EXTEND;} YY_BREAK case 17: YY_RULE_SETUP -#line 199 "ael.flex" +#line 201 "ael.flex" { STORE_POS; return KW_MACRO;}; YY_BREAK case 18: YY_RULE_SETUP -#line 200 "ael.flex" +#line 202 "ael.flex" { STORE_POS; return KW_GLOBALS;} YY_BREAK case 19: YY_RULE_SETUP -#line 201 "ael.flex" +#line 203 "ael.flex" { STORE_POS; return KW_LOCAL;} YY_BREAK case 20: YY_RULE_SETUP -#line 202 "ael.flex" +#line 204 "ael.flex" { STORE_POS; return KW_IGNOREPAT;} YY_BREAK case 21: YY_RULE_SETUP -#line 203 "ael.flex" +#line 205 "ael.flex" { STORE_POS; return KW_SWITCH;} YY_BREAK case 22: YY_RULE_SETUP -#line 204 "ael.flex" +#line 206 "ael.flex" { STORE_POS; return KW_IF;} YY_BREAK case 23: YY_RULE_SETUP -#line 205 "ael.flex" +#line 207 "ael.flex" { STORE_POS; return KW_IFTIME;} YY_BREAK case 24: YY_RULE_SETUP -#line 206 "ael.flex" +#line 208 "ael.flex" { STORE_POS; return KW_RANDOM;} YY_BREAK case 25: YY_RULE_SETUP -#line 207 "ael.flex" +#line 209 "ael.flex" { STORE_POS; return KW_REGEXTEN;} YY_BREAK case 26: YY_RULE_SETUP -#line 208 "ael.flex" +#line 210 "ael.flex" { STORE_POS; return KW_HINT;} YY_BREAK case 27: YY_RULE_SETUP -#line 209 "ael.flex" +#line 211 "ael.flex" { STORE_POS; return KW_ELSE;} YY_BREAK case 28: YY_RULE_SETUP -#line 210 "ael.flex" +#line 212 "ael.flex" { STORE_POS; return KW_GOTO;} YY_BREAK case 29: YY_RULE_SETUP -#line 211 "ael.flex" +#line 213 "ael.flex" { STORE_POS; return KW_JUMP;} YY_BREAK case 30: YY_RULE_SETUP -#line 212 "ael.flex" +#line 214 "ael.flex" { STORE_POS; return KW_RETURN;} YY_BREAK case 31: YY_RULE_SETUP -#line 213 "ael.flex" +#line 215 "ael.flex" { STORE_POS; return KW_BREAK;} YY_BREAK case 32: YY_RULE_SETUP -#line 214 "ael.flex" +#line 216 "ael.flex" { STORE_POS; return KW_CONTINUE;} YY_BREAK case 33: YY_RULE_SETUP -#line 215 "ael.flex" +#line 217 "ael.flex" { STORE_POS; return KW_FOR;} YY_BREAK case 34: YY_RULE_SETUP -#line 216 "ael.flex" +#line 218 "ael.flex" { STORE_POS; return KW_WHILE;} YY_BREAK case 35: YY_RULE_SETUP -#line 217 "ael.flex" +#line 219 "ael.flex" { STORE_POS; return KW_CASE;} YY_BREAK case 36: YY_RULE_SETUP -#line 218 "ael.flex" +#line 220 "ael.flex" { STORE_POS; return KW_DEFAULT;} YY_BREAK case 37: YY_RULE_SETUP -#line 219 "ael.flex" +#line 221 "ael.flex" { STORE_POS; return KW_PATTERN;} YY_BREAK case 38: YY_RULE_SETUP -#line 220 "ael.flex" +#line 222 "ael.flex" { STORE_POS; return KW_CATCH;} YY_BREAK case 39: YY_RULE_SETUP -#line 221 "ael.flex" +#line 223 "ael.flex" { STORE_POS; return KW_SWITCHES;} YY_BREAK case 40: YY_RULE_SETUP -#line 222 "ael.flex" +#line 224 "ael.flex" { STORE_POS; return KW_ESWITCHES;} YY_BREAK case 41: YY_RULE_SETUP -#line 223 "ael.flex" +#line 225 "ael.flex" { STORE_POS; return KW_INCLUDES;} YY_BREAK case 42: YY_RULE_SETUP -#line 224 "ael.flex" +#line 226 "ael.flex" { BEGIN(comment); my_col += 2; } YY_BREAK case 43: YY_RULE_SETUP -#line 226 "ael.flex" +#line 228 "ael.flex" { my_col += yyleng; } YY_BREAK case 44: /* rule 44 can match eol */ YY_RULE_SETUP -#line 227 "ael.flex" +#line 229 "ael.flex" { ++my_lineno; my_col=1;} YY_BREAK case 45: YY_RULE_SETUP -#line 228 "ael.flex" +#line 230 "ael.flex" { my_col += yyleng; } YY_BREAK case 46: /* rule 46 can match eol */ YY_RULE_SETUP -#line 229 "ael.flex" +#line 231 "ael.flex" { ++my_lineno; my_col=1;} YY_BREAK case 47: YY_RULE_SETUP -#line 230 "ael.flex" +#line 232 "ael.flex" { my_col += 2; BEGIN(INITIAL); } YY_BREAK case 48: /* rule 48 can match eol */ YY_RULE_SETUP -#line 232 "ael.flex" +#line 234 "ael.flex" { my_lineno++; my_col = 1; } YY_BREAK case 49: YY_RULE_SETUP -#line 233 "ael.flex" +#line 235 "ael.flex" { my_col += yyleng; } YY_BREAK case 50: YY_RULE_SETUP -#line 234 "ael.flex" +#line 236 "ael.flex" { my_col += (yyleng*8)-(my_col%8); } YY_BREAK case 51: YY_RULE_SETUP -#line 236 "ael.flex" +#line 238 "ael.flex" { STORE_POS; yylval->str = strdup(yytext); @@ -1498,7 +1508,7 @@ YY_RULE_SETUP case 52: /* rule 52 can match eol */ YY_RULE_SETUP -#line 252 "ael.flex" +#line 254 "ael.flex" { if ( pbcpop(')') ) { /* error */ STORE_LOC; @@ -1524,7 +1534,7 @@ YY_RULE_SETUP case 53: /* rule 53 can match eol */ YY_RULE_SETUP -#line 274 "ael.flex" +#line 276 "ael.flex" { char c = yytext[yyleng-1]; if (c == '(') @@ -1536,7 +1546,7 @@ YY_RULE_SETUP case 54: /* rule 54 can match eol */ YY_RULE_SETUP -#line 282 "ael.flex" +#line 284 "ael.flex" { char c = yytext[yyleng-1]; if ( pbcpop(c)) { /* error */ @@ -1561,7 +1571,7 @@ YY_RULE_SETUP case 55: /* rule 55 can match eol */ YY_RULE_SETUP -#line 304 "ael.flex" +#line 306 "ael.flex" { char c = yytext[yyleng-1]; if (c == '(') @@ -1573,7 +1583,7 @@ YY_RULE_SETUP case 56: /* rule 56 can match eol */ YY_RULE_SETUP -#line 312 "ael.flex" +#line 314 "ael.flex" { if ( pbcpop(')') ) { /* error */ STORE_LOC; @@ -1601,7 +1611,7 @@ YY_RULE_SETUP case 57: /* rule 57 can match eol */ YY_RULE_SETUP -#line 336 "ael.flex" +#line 338 "ael.flex" { if( parencount != 0) { /* printf("Folding in a comma!\n"); */ yymore(); @@ -1619,7 +1629,7 @@ YY_RULE_SETUP case 58: /* rule 58 can match eol */ YY_RULE_SETUP -#line 350 "ael.flex" +#line 352 "ael.flex" { char c = yytext[yyleng-1]; if ( pbcpop(c) ) { /* error */ @@ -1640,7 +1650,7 @@ YY_RULE_SETUP case 59: /* rule 59 can match eol */ YY_RULE_SETUP -#line 367 "ael.flex" +#line 369 "ael.flex" { char c = yytext[yyleng-1]; yymore(); @@ -1650,7 +1660,7 @@ YY_RULE_SETUP case 60: /* rule 60 can match eol */ YY_RULE_SETUP -#line 373 "ael.flex" +#line 375 "ael.flex" { char c = yytext[yyleng-1]; if ( pbcpop(c) ) { /* error */ @@ -1666,7 +1676,7 @@ YY_RULE_SETUP case 61: /* rule 61 can match eol */ YY_RULE_SETUP -#line 385 "ael.flex" +#line 387 "ael.flex" { STORE_LOC; yylval->str = strdup(yytext); @@ -1679,7 +1689,7 @@ YY_RULE_SETUP case 62: /* rule 62 can match eol */ YY_RULE_SETUP -#line 394 "ael.flex" +#line 396 "ael.flex" { char fnamebuf[1024],*p1,*p2; int glob_ret; @@ -1729,7 +1739,7 @@ case YY_STATE_EOF(paren): case YY_STATE_EOF(semic): case YY_STATE_EOF(argg): case YY_STATE_EOF(comment): -#line 439 "ael.flex" +#line 441 "ael.flex" { char fnamebuf[2048]; if (include_stack_index > 0 && include_stack[include_stack_index-1].globbuf_pos < include_stack[include_stack_index-1].globbuf.gl_pathc-1) { @@ -1766,10 +1776,10 @@ case YY_STATE_EOF(comment): YY_BREAK case 63: YY_RULE_SETUP -#line 473 "ael.flex" +#line 475 "ael.flex" ECHO; YY_BREAK -#line 1772 "ael_lex.c" +#line 1782 "ael_lex.c" case YY_END_OF_BUFFER: { @@ -2071,7 +2081,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yyscan_t yyscanner) { register int yy_is_jam; - struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */ register char *yy_cp = yyg->yy_c_buf_p; register YY_CHAR yy_c = 1; @@ -2520,10 +2530,10 @@ YY_BUFFER_STATE ael_yy_scan_buffer (char * base, yy_size_t size , yyscan_t yys * @note If you want to scan bytes that may contain NUL values, then use * ael_yy_scan_bytes() instead. */ -YY_BUFFER_STATE ael_yy_scan_string (yyconst char * yy_str , yyscan_t yyscanner) +YY_BUFFER_STATE ael_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner) { - return ael_yy_scan_bytes(yy_str,strlen(yy_str) ,yyscanner); + return ael_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner); } /** Setup the input buffer state to scan the given bytes. The next call to ael_yylex() will @@ -2533,7 +2543,7 @@ YY_BUFFER_STATE ael_yy_scan_string (yyconst char * yy_str , yyscan_t yyscanner) * @param yyscanner The scanner object. * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE ael_yy_scan_bytes (yyconst char * bytes, int len , yyscan_t yyscanner) +YY_BUFFER_STATE ael_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len , yyscan_t yyscanner) { YY_BUFFER_STATE b; char *buf; @@ -2541,15 +2551,15 @@ YY_BUFFER_STATE ael_yy_scan_bytes (yyconst char * bytes, int len , yyscan_t yy int i; /* Get memory for full buffer, including space for trailing EOB's. */ - n = len + 2; + n = _yybytes_len + 2; buf = (char *) ael_yyalloc(n ,yyscanner ); if ( ! buf ) YY_FATAL_ERROR( "out of dynamic memory in ael_yy_scan_bytes()" ); - for ( i = 0; i < len; ++i ) - buf[i] = bytes[i]; + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; - buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; b = ael_yy_scan_buffer(buf,n ,yyscanner); if ( ! b ) @@ -2760,21 +2770,51 @@ void ael_yyset_lloc (YYLTYPE * yylloc_param , yyscan_t yyscanner) yylloc = yylloc_param; } +/* User-visible API */ + +/* ael_yylex_init is special because it creates the scanner itself, so it is + * the ONLY reentrant function that doesn't take the scanner as the last argument. + * That's why we explicitly handle the declaration, instead of using our macros. + */ + +int ael_yylex_init(yyscan_t* ptr_yy_globals) + +{ + if (ptr_yy_globals == NULL){ + errno = EINVAL; + return 1; + } + + *ptr_yy_globals = (yyscan_t) ael_yyalloc ( sizeof( struct yyguts_t ), NULL ); + + if (*ptr_yy_globals == NULL){ + errno = ENOMEM; + return 1; + } + + /* By setting to 0xAA, we expose bugs in yy_init_globals. Leave at 0x00 for releases. */ + memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t)); + + return yy_init_globals ( *ptr_yy_globals ); +} + static int yy_init_globals (yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* Initialization is the same as for the non-reentrant scanner. - This function is called once per scanner lifetime. */ + * This function is called from ael_yylex_destroy(), so don't allocate here. + */ yyg->yy_buffer_stack = 0; yyg->yy_buffer_stack_top = 0; yyg->yy_buffer_stack_max = 0; yyg->yy_c_buf_p = (char *) 0; - yyg->yy_init = 1; + yyg->yy_init = 0; yyg->yy_start = 0; + yyg->yy_start_stack_ptr = 0; yyg->yy_start_stack_depth = 0; - yyg->yy_start_stack = (int *) 0; + yyg->yy_start_stack = NULL; /* Defined in main.c */ #ifdef YY_STDINIT @@ -2791,33 +2831,6 @@ static int yy_init_globals (yyscan_t yyscanner) return 0; } -/* User-visible API */ - -/* ael_yylex_init is special because it creates the scanner itself, so it is - * the ONLY reentrant function that doesn't take the scanner as the last argument. - * That's why we explicitly handle the declaration, instead of using our macros. - */ - -int ael_yylex_init(yyscan_t* ptr_yy_globals) - -{ - if (ptr_yy_globals == NULL){ - errno = EINVAL; - return 1; - } - - *ptr_yy_globals = (yyscan_t) ael_yyalloc ( sizeof( struct yyguts_t ), NULL ); - - if (*ptr_yy_globals == NULL){ - errno = ENOMEM; - return 1; - } - - memset(*ptr_yy_globals,0,sizeof(struct yyguts_t)); - - return yy_init_globals ( *ptr_yy_globals ); -} - /* ael_yylex_destroy is for both reentrant and non-reentrant scanners. */ int ael_yylex_destroy (yyscan_t yyscanner) { @@ -2838,8 +2851,13 @@ int ael_yylex_destroy (yyscan_t yyscanner) ael_yyfree(yyg->yy_start_stack ,yyscanner ); yyg->yy_start_stack = NULL; + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * ael_yylex() is called, initialization will occur. */ + yy_init_globals( yyscanner); + /* Destroy the main struct (reentrant only). */ ael_yyfree ( yyscanner , yyscanner ); + yyscanner = NULL; return 0; } @@ -2851,7 +2869,6 @@ int ael_yylex_destroy (yyscan_t yyscanner) static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner) { register int i; - struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; for ( i = 0; i < n; ++i ) s1[i] = s2[i]; } @@ -2861,7 +2878,6 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yysca static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner) { register int n; - struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; for ( n = 0; s[n]; ++n ) ; @@ -2893,19 +2909,7 @@ void ael_yyfree (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#undef YY_NEW_FILE -#undef YY_FLUSH_BUFFER -#undef yy_set_bol -#undef yy_new_buffer -#undef yy_set_interactive -#undef yytext_ptr -#undef YY_DO_BEFORE_ACTION - -#ifdef YY_DECL_IS_OURS -#undef YY_DECL_IS_OURS -#undef YY_DECL -#endif -#line 473 "ael.flex" +#line 475 "ael.flex" |