1 #include <IceUtil/ScannerConfig.h> 
    2 #line 2 "src/IceStorm/Scanner.cpp" 
    4 #line 4 "src/IceStorm/Scanner.cpp" 
    6 #define YY_INT_ALIGNED short int 
   11 #define YY_FLEX_MAJOR_VERSION 2 
   12 #define YY_FLEX_MINOR_VERSION 5 
   13 #define YY_FLEX_SUBMINOR_VERSION 37 
   14 #if YY_FLEX_SUBMINOR_VERSION > 0 
   35 #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L 
   40 #ifndef __STDC_LIMIT_MACROS 
   41 #define __STDC_LIMIT_MACROS 1 
   61 #define INT8_MIN (-128) 
   64 #define INT16_MIN (-32767 - 1) 
   67 #define INT32_MIN (-2147483647 - 1) 
   70 #define INT8_MAX (127) 
   73 #define INT16_MAX (32767) 
   76 #define INT32_MAX (2147483647) 
   79 #define UINT8_MAX (255U) 
   82 #define UINT16_MAX (65535U) 
   85 #define UINT32_MAX (4294967295U) 
  100 #if defined(__STDC__) 
  108 #define yyconst const 
  121 #define YY_SC_TO_UI(c) ((unsigned int)(unsigned char)c) 
  127 #define BEGIN (yy_start) = 1 + 2 * 
  133 #define YY_START (((yy_start)-1) / 2) 
  134 #define YYSTATE YY_START 
  137 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 
  140 #define YY_NEW_FILE yyrestart(yyin) 
  142 #define YY_END_OF_BUFFER_CHAR 0 
  146 #define YY_BUF_SIZE 16384 
  151 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) 
  153 #ifndef YY_TYPEDEF_YY_BUFFER_STATE 
  154 #define YY_TYPEDEF_YY_BUFFER_STATE 
  158 #ifndef YY_TYPEDEF_YY_SIZE_T 
  159 #define YY_TYPEDEF_YY_SIZE_T 
  167 #define EOB_ACT_CONTINUE_SCAN 0 
  168 #define EOB_ACT_END_OF_FILE 1 
  169 #define EOB_ACT_LAST_MATCH 2 
  171 #define YY_LESS_LINENO(n) 
  178         int yyless_macro_arg = (n);                                                                \ 
  179         YY_LESS_LINENO(yyless_macro_arg);                                                          \ 
  180         *yy_cp = (yy_hold_char);                                                                   \ 
  181         YY_RESTORE_YY_MORE_OFFSET(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ;    \ 
  182         YY_DO_BEFORE_ACTION;                                              \ 
  185 #define unput(c) yyunput(c, (yytext_ptr)) 
  187 #ifndef YY_STRUCT_YY_BUFFER_STATE 
  188 #define YY_STRUCT_YY_BUFFER_STATE 
  236 #define YY_BUFFER_NEW 0 
  237 #define YY_BUFFER_NORMAL 1 
  248 #define YY_BUFFER_EOF_PENDING 2 
  253 static size_t yy_buffer_stack_top = 0; 
 
  254 static size_t yy_buffer_stack_max = 0; 
 
  263 #define YY_CURRENT_BUFFER ((yy_buffer_stack) ? (yy_buffer_stack)[(yy_buffer_stack_top)] : NULL) 
  268 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 
  271 static char yy_hold_char;
 
  276 static char* yy_c_buf_p = (
char*)0;
 
  277 static int yy_init = 0; 
 
  278 static int yy_start = 0; 
 
  283 static int yy_did_buffer_switch_on_eof;
 
  293 static void yyensure_buffer_stack(
void);
 
  294 static void yy_load_buffer_state(
void);
 
  297 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER) 
  307 #define yy_new_buffer yy_create_buffer 
  309 #define yy_set_interactive(is_interactive)                                                         \ 
  311         if (!YY_CURRENT_BUFFER)                                                                    \ 
  313             yyensure_buffer_stack();                                                               \ 
  314             YY_CURRENT_BUFFER_LVALUE = yy_create_buffer(yyin, YY_BUF_SIZE);                        \ 
  316         YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive;                              \ 
  319 #define yy_set_bol(at_bol)                                                                         \ 
  321         if (!YY_CURRENT_BUFFER)                                                                    \ 
  323             yyensure_buffer_stack();                                                               \ 
  324             YY_CURRENT_BUFFER_LVALUE = yy_create_buffer(yyin, YY_BUF_SIZE);                        \ 
  326         YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol;                                              \ 
  329 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 
  334 #define YY_SKIP_YYWRAP 
  347 #define yytext_ptr yytext 
  351 static int yy_get_next_buffer(
void);
 
  352 static void yy_fatal_error(
yyconst char msg[]);
 
  357 #define YY_DO_BEFORE_ACTION                                                                        \ 
  358     (yytext_ptr) = yy_bp;                                                                          \ 
  359     yyleng = (size_t)(yy_cp - yy_bp);                                                              \ 
  360     (yy_hold_char) = *yy_cp;                                                                       \ 
  362     (yy_c_buf_p) = yy_cp; 
  364 #define YY_NUM_RULES 8 
  365 #define YY_END_OF_BUFFER 9 
  376     yy_accept[19] = {0, 3, 3, 9, 7, 3, 4, 5, 6, 7, 4, 7, 3, 0, 2, 1, 0, 3, 0};
 
  379     0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 
  380     1, 1, 1, 1, 2, 1, 4, 1, 1, 1, 1, 5, 1, 1, 6, 1, 1, 1, 1, 7, 1, 1, 1, 1, 1, 1, 1, 1,
 
  381     1, 1, 1, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 
  382     1, 1, 1, 1, 1, 1, 1, 1, 9, 1, 1, 1, 1, 1, 1, 1, 1,
 
  384     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,
 
  385     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,
 
  386     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,
 
  387     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
 
  389     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,
 
  390     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};
 
  395     yy_base[19] = {0, 0, 0, 11, 22, 8, 22, 22, 22, 12, 22, 18, 0, 0, 22, 22, 0, 22, 22};
 
  398     yy_def[19] = {0, 18, 1, 18, 18, 18, 18, 18, 18, 18, 18, 18, 5, 11, 18, 18, 11, 18, 0};
 
  400 static yyconst flex_int16_t yy_nxt[32] = {0,  4,  5,  6,  7,  8,  4,  9,  10, 11, 12,
 
  401                                           18, 18, 18, 18, 18, 18, 13, 14, 15, 16, 17,
 
  402                                           3,  18, 18, 18, 18, 18, 18, 18, 18, 18};
 
  404 static yyconst flex_int16_t yy_chk[32] = {0,  1,  1,  1,  1,  1,  1,  1,  1,  1,  5,
 
  405                                           3,  0,  0,  0,  0,  0,  5,  9,  9,  11, 11,
 
  406                                           18, 18, 18, 18, 18, 18, 18, 18, 18, 18};
 
  409 static char* yy_last_accepting_cpos;
 
  417 #define REJECT reject_used_but_not_detected 
  418 #define yymore() yymore_used_but_not_detected 
  419 #define YY_MORE_ADJ 0 
  420 #define YY_RESTORE_YY_MORE_OFFSET 
  422 #line 1 "src/IceStorm/Scanner.l" 
  423 #line 2 "src/IceStorm/Scanner.l" 
  438 #if defined(_MSC_VER) && defined(ICE_64) 
  443 #pragma warning(4 : 4267) 
  448 #pragma warning(4 : 4244) 
  451 #if defined(_MSC_VER) && defined(ICE_32) 
  455 #pragma warning(4 : 4018) 
  458 #if defined(__GNUC__) 
  459 #pragma GCC diagnostic ignored "-Wsign-compare" 
  471 #define YY_NO_UNISTD_H 
  480 #pragma error_messages(off, truncwarn) 
  484 #define YY_INPUT(buf, result, maxSize) parser->getInput(buf, result, maxSize) 
  496 #define YY_USER_INIT initScanner(); 
  498 #line 537 "src/IceStorm/Scanner.cpp" 
  502 #ifndef YY_NO_UNISTD_H 
  510 #ifndef YY_EXTRA_TYPE 
  511 #define YY_EXTRA_TYPE void* 
  514 static int yy_init_globals(
void);
 
  549 #ifndef YY_SKIP_YYWRAP 
  551 extern "C" int yywrap(
void);
 
  557 static void yyunput(
int c, 
char* buf_ptr);
 
  560 static void yy_flex_strncpy(
char*, 
yyconst char*, 
int);
 
  563 #ifdef YY_NEED_STRLEN 
  564 static int yy_flex_strlen(
yyconst char*);
 
  570 static int yyinput(
void);
 
  572 static int input(
void);
 
  578 #ifndef YY_READ_BUF_SIZE 
  579 #define YY_READ_BUF_SIZE 8192 
  590         if (fwrite(yytext, yyleng, 1, yyout))                                                      \ 
  600 #define YY_INPUT(buf, result, max_size)                                                            \ 
  601     if (YY_CURRENT_BUFFER_LVALUE->yy_is_interactive)                                               \ 
  605         for (n = 0; n < max_size && (c = getc(yyin)) != EOF && c != '\n'; ++n)                     \ 
  608             buf[n++] = (char)c;                                                                    \ 
  609         if (c == EOF && ferror(yyin))                                                              \ 
  610             YY_FATAL_ERROR("input in flex scanner failed");                                        \ 
  616         while ((result = fread(buf, 1, max_size, yyin)) == 0 && ferror(yyin))                      \ 
  618             if (errno != EINTR)                                                                    \ 
  620                 YY_FATAL_ERROR("input in flex scanner failed");                                    \ 
  636 #define yyterminate() return YY_NULL 
  640 #ifndef YY_START_STACK_INCR 
  641 #define YY_START_STACK_INCR 25 
  645 #ifndef YY_FATAL_ERROR 
  646 #define YY_FATAL_ERROR(msg) yy_fatal_error(msg) 
  655 #define YY_DECL_IS_OURS 1 
  657 extern int yylex(
void);
 
  659 #define YY_DECL int yylex(void) 
  665 #ifndef YY_USER_ACTION 
  666 #define YY_USER_ACTION 
  671 #define YY_BREAK break; 
  674 #define YY_RULE_SETUP YY_USER_ACTION 
  684 #line 84 "src/IceStorm/Scanner.l" 
  687 #line 722 "src/IceStorm/Scanner.cpp" 
  714             yyensure_buffer_stack();
 
  718         yy_load_buffer_state();
 
  723         yy_cp = (yy_c_buf_p);
 
  726         *
yy_cp = (yy_hold_char);
 
  733         yy_current_state = (yy_start);
 
  738             if (yy_accept[yy_current_state])
 
  740                 (yy_last_accepting_state) = yy_current_state;
 
  741                 (yy_last_accepting_cpos) = 
yy_cp;
 
  743             while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
 
  745                 yy_current_state = (int)yy_def[yy_current_state];
 
  746                 if (yy_current_state >= 19)
 
  748                     yy_c = yy_meta[(
unsigned int)yy_c];
 
  751             yy_current_state = yy_nxt[yy_base[yy_current_state] + (
unsigned int)yy_c];
 
  753         } 
while (yy_base[yy_current_state] != 22);
 
  756         yy_act = yy_accept[yy_current_state];
 
  760             yy_cp = (yy_last_accepting_cpos);
 
  761             yy_current_state = (yy_last_accepting_state);
 
  762             yy_act = yy_accept[yy_current_state];
 
  774                 *
yy_cp = (yy_hold_char);
 
  775                 yy_cp = (yy_last_accepting_cpos);
 
  776                 yy_current_state = (yy_last_accepting_state);
 
  781 #line 86 "src/IceStorm/Scanner.l" 
  788                     } 
while (
c != 
'\n' && 
c != EOF);
 
  793 #line 96 "src/IceStorm/Scanner.l" 
  801                             int next = yyinput();
 
  822 #line 121 "src/IceStorm/Scanner.l" 
  824                     size_t len = strlen(
yytext);
 
  825                     for (
size_t i = 0; i < len; ++i)
 
  837 #line 132 "src/IceStorm/Scanner.l" 
  844 #line 136 "src/IceStorm/Scanner.l" 
  850                         char c = 
static_cast<char>(yyinput());
 
  855                         else if (
c == 
static_cast<char>(EOF))
 
  862                             char next = 
static_cast<char>(yyinput());
 
  885                     yylvalp->push_back(
s);
 
  891 #line 180 "src/IceStorm/Scanner.l" 
  897                         char c = 
static_cast<char>(yyinput());
 
  902                         else if (
c == 
static_cast<char>(EOF))
 
  913                     yylvalp->push_back(
s);
 
  919 #line 205 "src/IceStorm/Scanner.l" 
  926                         char c = 
static_cast<char>(yyinput());
 
  927                         if (
c == 
static_cast<char>(EOF))
 
  931                         else if (isspace(
static_cast<unsigned char>(
c)) || 
c == 
';')
 
  941                     yylvalp->push_back(
s);
 
  943                     StringTokenMap::const_iterator pos = keywordMap.find(
s);
 
  949 #line 232 "src/IceStorm/Scanner.l" 
  952 #line 979 "src/IceStorm/Scanner.cpp" 
  962                 *
yy_cp = (yy_hold_char);
 
  993                     (yy_c_buf_p) = (
yytext_ptr) + yy_amount_of_matched_text;
 
  995                     yy_current_state = yy_get_previous_state();
 
 1006                     yy_next_state = yy_try_NUL_trans(yy_current_state);
 
 1013                         yy_cp = ++(yy_c_buf_p);
 
 1014                         yy_current_state = yy_next_state;
 
 1020                         yy_cp = (yy_c_buf_p);
 
 1021                         goto yy_find_action;
 
 1026                     switch (yy_get_next_buffer())
 
 1030                             (yy_did_buffer_switch_on_eof) = 0;
 
 1051                                 if (!(yy_did_buffer_switch_on_eof))
 
 1060                             (yy_c_buf_p) = (
yytext_ptr) + yy_amount_of_matched_text;
 
 1062                             yy_current_state = yy_get_previous_state();
 
 1064                             yy_cp = (yy_c_buf_p);
 
 1071                             yy_current_state = yy_get_previous_state();
 
 1073                             yy_cp = (yy_c_buf_p);
 
 1075                             goto yy_find_action;
 
 1081                 YY_FATAL_ERROR(
"fatal flex scanner internal error--no action found");
 
 1094 yy_get_next_buffer(
void)
 
 1098      int number_to_move, i;
 
 1102         YY_FATAL_ERROR(
"fatal flex scanner internal error--end of buffer missed");
 
 1127     number_to_move = (int)((yy_c_buf_p) - (
yytext_ptr)) - 1;
 
 1129     for (i = 0; i < number_to_move; ++i)
 
 1146         while (num_to_read <= 0)
 
 1153             int yy_c_buf_p_offset = (int)((yy_c_buf_p)-b->
yy_ch_buf);
 
 1181             (yy_c_buf_p) = &b->
yy_ch_buf[yy_c_buf_p_offset];
 
 1197     if ((yy_n_chars) == 0)
 
 1220         yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
 
 1229     (yy_n_chars) += number_to_move;
 
 1241 yy_get_previous_state(
void)
 
 1246     yy_current_state = (yy_start);
 
 1251         if (yy_accept[yy_current_state])
 
 1253             (yy_last_accepting_state) = yy_current_state;
 
 1254             (yy_last_accepting_cpos) = 
yy_cp;
 
 1256         while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
 
 1258             yy_current_state = (int)yy_def[yy_current_state];
 
 1259             if (yy_current_state >= 19)
 
 1261                 yy_c = yy_meta[(
unsigned int)yy_c];
 
 1264         yy_current_state = yy_nxt[yy_base[yy_current_state] + (
unsigned int)yy_c];
 
 1267     return yy_current_state;
 
 1279      char* 
yy_cp = (yy_c_buf_p);
 
 1282     if (yy_accept[yy_current_state])
 
 1284         (yy_last_accepting_state) = yy_current_state;
 
 1285         (yy_last_accepting_cpos) = 
yy_cp;
 
 1287     while (yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
 
 1289         yy_current_state = (int)yy_def[yy_current_state];
 
 1290         if (yy_current_state >= 19)
 
 1292             yy_c = yy_meta[(
unsigned int)yy_c];
 
 1295     yy_current_state = yy_nxt[yy_base[yy_current_state] + (
unsigned int)yy_c];
 
 1296     yy_is_jam = (yy_current_state == 18);
 
 1298     return yy_is_jam ? 0 : yy_current_state;
 
 1302 yyunput(
int c,  
char* 
yy_bp)
 
 1306     yy_cp = (yy_c_buf_p);
 
 1309     *
yy_cp = (yy_hold_char);
 
 1311     if (yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2)
 
 1315          yy_size_t number_to_move = (yy_n_chars) + 2;
 
 1329         if (yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2)
 
 1338     (yy_hold_char) = *
yy_cp;
 
 1339     (yy_c_buf_p) = 
yy_cp;
 
 1354     *(yy_c_buf_p) = (yy_hold_char);
 
 1365             *(yy_c_buf_p) = 
'\0';
 
 1374             switch (yy_get_next_buffer())
 
 1399                     if (!(yy_did_buffer_switch_on_eof))
 
 1417     c = *(
unsigned char*)(yy_c_buf_p); 
 
 1418     *(yy_c_buf_p) = 
'\0'; 
 
 1419     (yy_hold_char) = *++(yy_c_buf_p);
 
 1436         yyensure_buffer_stack();
 
 1441     yy_load_buffer_state();
 
 1457     yyensure_buffer_stack();
 
 1466         *(yy_c_buf_p) = (yy_hold_char);
 
 1472     yy_load_buffer_state();
 
 1479     (yy_did_buffer_switch_on_eof) = 1;
 
 1483 yy_load_buffer_state(
void)
 
 1488     (yy_hold_char) = *(yy_c_buf_p);
 
 1521     yy_init_buffer(b, file);
 
 1610         yy_load_buffer_state();
 
 1623     if (new_buffer == NULL)
 
 1628     yyensure_buffer_stack();
 
 1634         *(yy_c_buf_p) = (yy_hold_char);
 
 1642         (yy_buffer_stack_top)++;
 
 1647     yy_load_buffer_state();
 
 1648     (yy_did_buffer_switch_on_eof) = 1;
 
 1665     if ((yy_buffer_stack_top) > 0)
 
 1667         --(yy_buffer_stack_top);
 
 1672         yy_load_buffer_state();
 
 1673         (yy_did_buffer_switch_on_eof) = 1;
 
 1681 yyensure_buffer_stack(
void)
 
 1685     if (!(yy_buffer_stack))
 
 1695         if (!(yy_buffer_stack))
 
 1697             YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()");
 
 1700         memset((yy_buffer_stack), 0, num_to_alloc * 
sizeof(
struct yy_buffer_state*));
 
 1702         (yy_buffer_stack_max) = num_to_alloc;
 
 1703         (yy_buffer_stack_top) = 0;
 
 1707     if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1)
 
 1713         num_to_alloc = (yy_buffer_stack_max) + grow_size;
 
 1716         if (!(yy_buffer_stack))
 
 1718             YY_FATAL_ERROR(
"out of dynamic memory in yyensure_buffer_stack()");
 
 1722         memset((yy_buffer_stack) + (yy_buffer_stack_max),
 
 1725         (yy_buffer_stack_max) = num_to_alloc;
 
 1799     n = _yybytes_len + 2;
 
 1806     for (i = 0; i < _yybytes_len; ++i)
 
 1808         buf[i] = yybytes[i];
 
 1827 #ifndef YY_EXIT_FAILURE 
 1828 #define YY_EXIT_FAILURE 2 
 1832 yy_fatal_error(
yyconst char* msg)
 
 1834     (void)fprintf(stderr, 
"%s\n", msg);
 
 1845         int yyless_macro_arg = (n);                                                                \ 
 1846         YY_LESS_LINENO(yyless_macro_arg);                                                          \ 
 1847         yytext[yyleng] = (yy_hold_char);                                                           \ 
 1848         (yy_c_buf_p) = yytext + yyless_macro_arg;                                                  \ 
 1849         (yy_hold_char) = *(yy_c_buf_p);                                                            \ 
 1850         *(yy_c_buf_p) = '\0';                                                                      \ 
 1851         yyleng = yyless_macro_arg;                                                                 \ 
 1945 yy_init_globals(
void)
 
 1951     (yy_buffer_stack) = 0;
 
 1952     (yy_buffer_stack_top) = 0;
 
 1953     (yy_buffer_stack_max) = 0;
 
 1954     (yy_c_buf_p) = (
char*)0;
 
 1987     yyfree((yy_buffer_stack));
 
 1988     (yy_buffer_stack) = NULL;
 
 2003 yy_flex_strncpy(
char* s1, 
yyconst char* s2, 
int n)
 
 2006     for (i = 0; i < 
n; ++i)
 
 2013 #ifdef YY_NEED_STRLEN 
 2018     for (
n = 0; 
s[
n]; ++
n)
 
 2028     return (
void*)malloc(size);
 
 2041     return (
void*)realloc((
char*)ptr, size);
 
 2050 #define YYTABLES_NAME "yytables" 
 2052 #line 232 "src/IceStorm/Scanner.l"