]> git.draconx.ca Git - gob-dx.git/blobdiff - src/lexer.c
Release 2.0.6
[gob-dx.git] / src / lexer.c
index 15f53475dd791c86011fc2a7826e37f73190a87c..66b0c8bea3cebc66af336e3101f4cd1e93a94f24 100644 (file)
@@ -932,7 +932,13 @@ char *yytext;
 #include "util.h"
 
 static int parenth_depth = 0;
-static int before_comment = INITIAL;
+static int before_comment
+/* New flex is on drugs */
+#if defined(FLEX_SCANNER) && ! defined(INITIAL)
+       = 0;
+#else
+       = INITIAL;
+#endif
 static gboolean class_after_c = FALSE;
 static int code_type = CCODE;
 static int before_string;
@@ -1012,7 +1018,7 @@ int yylex(void);
 
 #define GTK_DOC_LINE 10
 
-#line 1016 "lexer.c"
+#line 1022 "lexer.c"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1166,7 +1172,7 @@ YY_DECL
        register char *yy_cp = NULL, *yy_bp = NULL;
        register int yy_act;
 
-#line 109 "lexer.l"
+#line 115 "lexer.l"
 
 
 
@@ -1177,7 +1183,7 @@ yy_current_state = 0;
 
 
 
-#line 1181 "lexer.c"
+#line 1187 "lexer.c"
 
        if ( yy_init )
                {
@@ -1264,7 +1270,7 @@ do_action:        /* This label is used only to access EOF actions. */
        { /* beginning of action switch */
 case 1:
 YY_RULE_SETUP
-#line 119 "lexer.l"
+#line 125 "lexer.l"
 { line_no++; REJECT; }
        YY_BREAK
 case 2:
@@ -1272,7 +1278,7 @@ case 2:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 121 "lexer.l"
+#line 127 "lexer.l"
 {
 /* Thy evil easter egg */
 #define QQ(x) long x
@@ -1300,12 +1306,12 @@ case 3:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 143 "lexer.l"
+#line 149 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 145 "lexer.l"
+#line 151 "lexer.l"
 {
        char *p;
        char *number;
@@ -1345,7 +1351,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 182 "lexer.l"
+#line 188 "lexer.l"
 {
        if(look_for_includes==1) {
                char *p;
@@ -1368,7 +1374,7 @@ case 6:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 199 "lexer.l"
+#line 205 "lexer.l"
 {
                        /* eat out gtk doc stuff */
                        BEGIN(GTK_DOC_BEFORE_NAME);
@@ -1380,7 +1386,7 @@ case 7:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 204 "lexer.l"
+#line 210 "lexer.l"
 {
                        /* empty doc lines */
                        ;
@@ -1391,7 +1397,7 @@ case 8:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 208 "lexer.l"
+#line 214 "lexer.l"
 {
                        char *p;
                        BEGIN(GTK_DOC);
@@ -1405,14 +1411,14 @@ YY_RULE_SETUP
        YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 218 "lexer.l"
+#line 224 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                }
        YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 221 "lexer.l"
+#line 227 "lexer.l"
 {
                        BEGIN(COMMENT);
                        before_comment = CLASS_CODE_I;
@@ -1423,7 +1429,7 @@ case 11:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 225 "lexer.l"
+#line 231 "lexer.l"
 {
                        /* empty doc lines */
                        add_to_cbuf(" *\n");
@@ -1431,7 +1437,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 229 "lexer.l"
+#line 235 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        add_gtk_doc_func();
@@ -1439,7 +1445,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 233 "lexer.l"
+#line 239 "lexer.l"
 {
                        fflush(stdout);
                        add_to_cbuf(" * ");
@@ -1448,14 +1454,14 @@ YY_RULE_SETUP
        YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 238 "lexer.l"
+#line 244 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                }
        YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 241 "lexer.l"
+#line 247 "lexer.l"
 {
                        BEGIN(COMMENT);
                        before_comment = CLASS_CODE_I;
@@ -1463,7 +1469,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 245 "lexer.l"
+#line 251 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        add_to_cbuf("\n");
@@ -1475,7 +1481,7 @@ case 17:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 250 "lexer.l"
+#line 256 "lexer.l"
 {
                        BEGIN(GTK_DOC);
                        add_to_cbuf(yytext);
@@ -1484,7 +1490,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 255 "lexer.l"
+#line 261 "lexer.l"
 {
                        fflush(stdout);
                        add_to_cbuf(yytext);
@@ -1495,7 +1501,7 @@ case 19:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 260 "lexer.l"
+#line 266 "lexer.l"
 { add_to_cbuf(yytext); /*comment, ignore*/ }
        YY_BREAK
 case 20:
@@ -1503,7 +1509,7 @@ case 20:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 261 "lexer.l"
+#line 267 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 21:
@@ -1511,7 +1517,7 @@ case 21:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 262 "lexer.l"
+#line 268 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 22:
@@ -1519,17 +1525,17 @@ case 22:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 263 "lexer.l"
+#line 269 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 264 "lexer.l"
+#line 270 "lexer.l"
 {BEGIN(COMMENT); before_comment = INITIAL; }
        YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 265 "lexer.l"
+#line 271 "lexer.l"
 {
        add_to_cbuf(yytext);
        BEGIN(COMMENT);
@@ -1538,22 +1544,22 @@ YY_RULE_SETUP
        YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 270 "lexer.l"
+#line 276 "lexer.l"
 {BEGIN(COMMENT); before_comment = CLASS_CODE; }
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 271 "lexer.l"
+#line 277 "lexer.l"
 {BEGIN(COMMENT); before_comment = CLASS_CODE_I; }
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 272 "lexer.l"
+#line 278 "lexer.l"
 {BEGIN(COMMENT); before_comment = PROPERTY_CODE_I; }
        YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 273 "lexer.l"
+#line 279 "lexer.l"
 {
        if(before_comment == C_CODE) add_to_cbuf(yytext);
        BEGIN(before_comment);
@@ -1561,7 +1567,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 277 "lexer.l"
+#line 283 "lexer.l"
 {
        /* comment, ignore */
        if(before_comment == C_CODE) add_to_cbuf(yytext);
@@ -1569,7 +1575,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 281 "lexer.l"
+#line 287 "lexer.l"
 {
        /* comment, ignore */
        if(before_comment == C_CODE) add_to_cbuf(yytext);
@@ -1577,7 +1583,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 286 "lexer.l"
+#line 292 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1589,7 +1595,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 294 "lexer.l"
+#line 300 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1601,7 +1607,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 303 "lexer.l"
+#line 309 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1613,7 +1619,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 311 "lexer.l"
+#line 317 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1625,7 +1631,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 319 "lexer.l"
+#line 325 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1637,7 +1643,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 327 "lexer.l"
+#line 333 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1651,7 +1657,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 337 "lexer.l"
+#line 343 "lexer.l"
 {
                        BEGIN(INITIAL);
                        yylval.cbuf = cbuf;
@@ -1663,42 +1669,42 @@ YY_RULE_SETUP
        YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 346 "lexer.l"
+#line 352 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 347 "lexer.l"
+#line 353 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 348 "lexer.l"
+#line 354 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 349 "lexer.l"
+#line 355 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 350 "lexer.l"
+#line 356 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 351 "lexer.l"
+#line 357 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 44:
 YY_RULE_SETUP
-#line 353 "lexer.l"
+#line 359 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 356 "lexer.l"
+#line 362 "lexer.l"
 {
                        BEGIN(CODE_STRING);
                        before_string = C_CODE;
@@ -1707,7 +1713,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 361 "lexer.l"
+#line 367 "lexer.l"
 {
                        BEGIN(CODE_STRING);
                        before_string = PROPERTY_CODE_I;
@@ -1716,12 +1722,12 @@ YY_RULE_SETUP
        YY_BREAK
 case 47:
 YY_RULE_SETUP
-#line 366 "lexer.l"
+#line 372 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 48:
 YY_RULE_SETUP
-#line 367 "lexer.l"
+#line 373 "lexer.l"
 {
                        BEGIN(before_string);
                        add_to_cbuf(yytext);
@@ -1735,17 +1741,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 377 "lexer.l"
+#line 383 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 378 "lexer.l"
+#line 384 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 380 "lexer.l"
+#line 386 "lexer.l"
 {
                        parenth_depth++;
                        add_to_cbuf(yytext);
@@ -1753,7 +1759,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 384 "lexer.l"
+#line 390 "lexer.l"
 {
                        parenth_depth--;
                        if(parenth_depth<0) {
@@ -1769,17 +1775,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 397 "lexer.l"
+#line 403 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 398 "lexer.l"
+#line 404 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 400 "lexer.l"
+#line 406 "lexer.l"
 {
                        static int found_classes = 0;
                        look_for_includes = 2;
@@ -1795,17 +1801,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 413 "lexer.l"
+#line 419 "lexer.l"
 { return ERROR; }
        YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 414 "lexer.l"
+#line 420 "lexer.l"
 { return ENUM; }
        YY_BREAK
 case 58:
 YY_RULE_SETUP
-#line 415 "lexer.l"
+#line 421 "lexer.l"
 { return FLAGS; }
        YY_BREAK
 case 59:
@@ -1813,7 +1819,7 @@ case 59:
 yy_c_buf_p = yy_cp -= 1;
 YY_DO_BEFORE_ACTION; /* set up yytext again */
 YY_RULE_SETUP
-#line 417 "lexer.l"
+#line 423 "lexer.l"
 {
                        int maj = 0, min = 0, pl = 0;
                        int rmaj = 0, rmin = 0, rpl = 0;
@@ -1857,7 +1863,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 458 "lexer.l"
+#line 464 "lexer.l"
 {
                        if(for_cpp) {
                                error_printf(GOB_WARN, line_no,
@@ -1870,122 +1876,122 @@ YY_RULE_SETUP
        YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 468 "lexer.l"
+#line 474 "lexer.l"
 {return FROM;}
        YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 470 "lexer.l"
+#line 476 "lexer.l"
 {return VOID;}
        YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 471 "lexer.l"
+#line 477 "lexer.l"
 {return STRUCT;}
        YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 472 "lexer.l"
+#line 478 "lexer.l"
 {return UNION;}
        YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 473 "lexer.l"
+#line 479 "lexer.l"
 {return ENUM;}
        YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 474 "lexer.l"
+#line 480 "lexer.l"
 {return SIGNED;}
        YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 475 "lexer.l"
+#line 481 "lexer.l"
 {return UNSIGNED;}
        YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 476 "lexer.l"
+#line 482 "lexer.l"
 {return LONG;}
        YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 477 "lexer.l"
+#line 483 "lexer.l"
 {return SHORT;}
        YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 478 "lexer.l"
+#line 484 "lexer.l"
 {return INT;}
        YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 479 "lexer.l"
+#line 485 "lexer.l"
 {return FLOAT;}
        YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 480 "lexer.l"
+#line 486 "lexer.l"
 {return DOUBLE;}
        YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 481 "lexer.l"
+#line 487 "lexer.l"
 {return CHAR;}
        YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 482 "lexer.l"
+#line 488 "lexer.l"
 {return CONST;}
        YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 484 "lexer.l"
+#line 490 "lexer.l"
 {return THREEDOTS;}
        YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 486 "lexer.l"
+#line 492 "lexer.l"
 {yylval.line = line_no; return PUBLIC;}
        YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 487 "lexer.l"
+#line 493 "lexer.l"
 {yylval.line = line_no; return PRIVATE;}
        YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 488 "lexer.l"
+#line 494 "lexer.l"
 {yylval.line = line_no; return PROTECTED;}
        YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 489 "lexer.l"
+#line 495 "lexer.l"
 {yylval.line = line_no; return CLASSWIDE;}
        YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 490 "lexer.l"
+#line 496 "lexer.l"
 {yylval.line = line_no; return ARGUMENT;}
        YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 491 "lexer.l"
+#line 497 "lexer.l"
 {yylval.line = line_no; return VIRTUAL;}
        YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 492 "lexer.l"
+#line 498 "lexer.l"
 {yylval.line = line_no; return SIGNAL;}
        YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 493 "lexer.l"
+#line 499 "lexer.l"
 {yylval.line = line_no; return OVERRIDE;}
        YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 494 "lexer.l"
+#line 500 "lexer.l"
 {
                                yylval.line = line_no;
                                BEGIN(PROPERTY_CODE);
@@ -1994,67 +2000,67 @@ YY_RULE_SETUP
        YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 499 "lexer.l"
+#line 505 "lexer.l"
 { yylval.line = line_no; return NICK; }
        YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 500 "lexer.l"
+#line 506 "lexer.l"
 { yylval.line = line_no; return BLURB; }
        YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 501 "lexer.l"
+#line 507 "lexer.l"
 { yylval.line = line_no; return MAXIMUM; }
        YY_BREAK
 case 88:
 YY_RULE_SETUP
-#line 502 "lexer.l"
+#line 508 "lexer.l"
 { yylval.line = line_no; return MINIMUM; }
        YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 503 "lexer.l"
+#line 509 "lexer.l"
 { yylval.line = line_no; return DEFAULT_VALUE; }
        YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 504 "lexer.l"
+#line 510 "lexer.l"
 { yylval.line = line_no; return FLAGS; }
        YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 505 "lexer.l"
+#line 511 "lexer.l"
 { yylval.line = line_no; return TYPE; }
        YY_BREAK
 case 92:
 YY_RULE_SETUP
-#line 506 "lexer.l"
+#line 512 "lexer.l"
 { yylval.line = line_no; return FLAGS_TYPE; }
        YY_BREAK
 case 93:
 YY_RULE_SETUP
-#line 507 "lexer.l"
+#line 513 "lexer.l"
 { yylval.line = line_no; return ENUM_TYPE; }
        YY_BREAK
 case 94:
 YY_RULE_SETUP
-#line 508 "lexer.l"
+#line 514 "lexer.l"
 { yylval.line = line_no; return PARAM_TYPE; }
        YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 509 "lexer.l"
+#line 515 "lexer.l"
 { yylval.line = line_no; return BOXED_TYPE; }
        YY_BREAK
 case 96:
 YY_RULE_SETUP
-#line 510 "lexer.l"
+#line 516 "lexer.l"
 { yylval.line = line_no; return OBJECT_TYPE; }
        YY_BREAK
 case 97:
 YY_RULE_SETUP
-#line 511 "lexer.l"
+#line 517 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth = 1;
@@ -2064,7 +2070,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 98:
 YY_RULE_SETUP
-#line 517 "lexer.l"
+#line 523 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth++;
@@ -2073,7 +2079,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 99:
 YY_RULE_SETUP
-#line 522 "lexer.l"
+#line 528 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth--;
@@ -2085,7 +2091,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 100:
 YY_RULE_SETUP
-#line 531 "lexer.l"
+#line 537 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return NUMBER;
@@ -2093,7 +2099,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 535 "lexer.l"
+#line 541 "lexer.l"
 {
                        /* This is cpp kind of token thingie */
                        if (for_cpp) {
@@ -2106,7 +2112,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 102:
 YY_RULE_SETUP
-#line 544 "lexer.l"
+#line 550 "lexer.l"
 {
                        /* this one is for a classname with a namespace */
                        yylval.id = g_strdup(yytext);
@@ -2115,7 +2121,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 549 "lexer.l"
+#line 555 "lexer.l"
 {
                        /* this is for a classname with an empty namespace */
                        yylval.id = g_strdup(yytext);
@@ -2124,7 +2130,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 104:
 YY_RULE_SETUP
-#line 554 "lexer.l"
+#line 560 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return TOKEN;
@@ -2132,7 +2138,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 558 "lexer.l"
+#line 564 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return SINGLE_CHAR;
@@ -2140,7 +2146,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 563 "lexer.l"
+#line 569 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return ARRAY_DIM;
@@ -2148,7 +2154,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 107:
 YY_RULE_SETUP
-#line 568 "lexer.l"
+#line 574 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        return '{';
@@ -2156,7 +2162,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 572 "lexer.l"
+#line 578 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth=1;
@@ -2169,7 +2175,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 581 "lexer.l"
+#line 587 "lexer.l"
 {
                                BEGIN(INITIAL);
                                return '}';
@@ -2177,12 +2183,12 @@ YY_RULE_SETUP
        YY_BREAK
 case 110:
 YY_RULE_SETUP
-#line 586 "lexer.l"
+#line 592 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
 case 111:
 YY_RULE_SETUP
-#line 588 "lexer.l"
+#line 594 "lexer.l"
 {
                        yylval.line = line_no;
                        return yytext[0];
@@ -2190,15 +2196,15 @@ YY_RULE_SETUP
        YY_BREAK
 case 112:
 YY_RULE_SETUP
-#line 593 "lexer.l"
+#line 599 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
 case 113:
 YY_RULE_SETUP
-#line 595 "lexer.l"
+#line 601 "lexer.l"
 ECHO;
        YY_BREAK
-#line 2202 "lexer.c"
+#line 2208 "lexer.c"
                        case YY_STATE_EOF(INITIAL):
                        case YY_STATE_EOF(COMMENT):
                        case YY_STATE_EOF(C_CODE):
@@ -2585,6 +2591,7 @@ register char *yy_bp;
 #endif /* ifndef YY_NO_UNPUT */
 
 
+#ifndef YY_NO_INPUT
 #ifdef __cplusplus
 static int yyinput()
 #else
@@ -2657,7 +2664,7 @@ static int input()
 
        return c;
        }
-
+#endif /* YY_NO_INPUT */
 
 #ifdef YY_USE_PROTOS
 void yyrestart( FILE *input_file )
@@ -3085,16 +3092,5 @@ int main()
        return 0;
        }
 #endif
-#line 595 "lexer.l"
-
-
-/* Ugly warning avoiding */
-#ifdef FLEX_SCANNER
-static void warning_avoider(void) G_GNUC_UNUSED;
-static void warning_avoider(void) {
-       yy_flex_realloc(NULL, 0);
-       yyunput(0, NULL);
-       warning_avoider();
-}
-#endif
+#line 601 "lexer.l"