]> git.draconx.ca Git - gob-dx.git/blobdiff - src/lexer.c
Release 2.0.7
[gob-dx.git] / src / lexer.c
index 15f53475dd791c86011fc2a7826e37f73190a87c..dde247593c06311faf1cb7288c7da90e6d41aa46 100644 (file)
@@ -922,9 +922,10 @@ char *yytext;
 #line 22 "lexer.l"
 
 #include "config.h"
-#include <glib.h>
+#include <stdlib.h>
 #include <string.h>
 #include <ctype.h>
+#include <glib.h>
 
 #include "treefuncs.h"
 #include "parse.h"
@@ -932,7 +933,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 +1019,7 @@ int yylex(void);
 
 #define GTK_DOC_LINE 10
 
-#line 1016 "lexer.c"
+#line 1023 "lexer.c"
 
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
@@ -1166,7 +1173,7 @@ YY_DECL
        register char *yy_cp = NULL, *yy_bp = NULL;
        register int yy_act;
 
-#line 109 "lexer.l"
+#line 116 "lexer.l"
 
 
 
@@ -1177,7 +1184,7 @@ yy_current_state = 0;
 
 
 
-#line 1181 "lexer.c"
+#line 1188 "lexer.c"
 
        if ( yy_init )
                {
@@ -1264,7 +1271,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 126 "lexer.l"
 { line_no++; REJECT; }
        YY_BREAK
 case 2:
@@ -1272,7 +1279,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 128 "lexer.l"
 {
 /* Thy evil easter egg */
 #define QQ(x) long x
@@ -1300,12 +1307,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 150 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 4:
 YY_RULE_SETUP
-#line 145 "lexer.l"
+#line 152 "lexer.l"
 {
        char *p;
        char *number;
@@ -1345,7 +1352,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 5:
 YY_RULE_SETUP
-#line 182 "lexer.l"
+#line 189 "lexer.l"
 {
        if(look_for_includes==1) {
                char *p;
@@ -1368,7 +1375,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 206 "lexer.l"
 {
                        /* eat out gtk doc stuff */
                        BEGIN(GTK_DOC_BEFORE_NAME);
@@ -1380,7 +1387,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 211 "lexer.l"
 {
                        /* empty doc lines */
                        ;
@@ -1391,7 +1398,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 215 "lexer.l"
 {
                        char *p;
                        BEGIN(GTK_DOC);
@@ -1405,14 +1412,14 @@ YY_RULE_SETUP
        YY_BREAK
 case 9:
 YY_RULE_SETUP
-#line 218 "lexer.l"
+#line 225 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                }
        YY_BREAK
 case 10:
 YY_RULE_SETUP
-#line 221 "lexer.l"
+#line 228 "lexer.l"
 {
                        BEGIN(COMMENT);
                        before_comment = CLASS_CODE_I;
@@ -1423,7 +1430,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 232 "lexer.l"
 {
                        /* empty doc lines */
                        add_to_cbuf(" *\n");
@@ -1431,7 +1438,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 12:
 YY_RULE_SETUP
-#line 229 "lexer.l"
+#line 236 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        add_gtk_doc_func();
@@ -1439,7 +1446,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 13:
 YY_RULE_SETUP
-#line 233 "lexer.l"
+#line 240 "lexer.l"
 {
                        fflush(stdout);
                        add_to_cbuf(" * ");
@@ -1448,14 +1455,14 @@ YY_RULE_SETUP
        YY_BREAK
 case 14:
 YY_RULE_SETUP
-#line 238 "lexer.l"
+#line 245 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                }
        YY_BREAK
 case 15:
 YY_RULE_SETUP
-#line 241 "lexer.l"
+#line 248 "lexer.l"
 {
                        BEGIN(COMMENT);
                        before_comment = CLASS_CODE_I;
@@ -1463,7 +1470,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 16:
 YY_RULE_SETUP
-#line 245 "lexer.l"
+#line 252 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        add_to_cbuf("\n");
@@ -1475,7 +1482,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 257 "lexer.l"
 {
                        BEGIN(GTK_DOC);
                        add_to_cbuf(yytext);
@@ -1484,7 +1491,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 18:
 YY_RULE_SETUP
-#line 255 "lexer.l"
+#line 262 "lexer.l"
 {
                        fflush(stdout);
                        add_to_cbuf(yytext);
@@ -1495,7 +1502,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 267 "lexer.l"
 { add_to_cbuf(yytext); /*comment, ignore*/ }
        YY_BREAK
 case 20:
@@ -1503,7 +1510,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 268 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 21:
@@ -1511,7 +1518,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 269 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 22:
@@ -1519,17 +1526,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 270 "lexer.l"
 { ; /*comment, ignore*/ }
        YY_BREAK
 case 23:
 YY_RULE_SETUP
-#line 264 "lexer.l"
+#line 271 "lexer.l"
 {BEGIN(COMMENT); before_comment = INITIAL; }
        YY_BREAK
 case 24:
 YY_RULE_SETUP
-#line 265 "lexer.l"
+#line 272 "lexer.l"
 {
        add_to_cbuf(yytext);
        BEGIN(COMMENT);
@@ -1538,22 +1545,22 @@ YY_RULE_SETUP
        YY_BREAK
 case 25:
 YY_RULE_SETUP
-#line 270 "lexer.l"
+#line 277 "lexer.l"
 {BEGIN(COMMENT); before_comment = CLASS_CODE; }
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 271 "lexer.l"
+#line 278 "lexer.l"
 {BEGIN(COMMENT); before_comment = CLASS_CODE_I; }
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 272 "lexer.l"
+#line 279 "lexer.l"
 {BEGIN(COMMENT); before_comment = PROPERTY_CODE_I; }
        YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 273 "lexer.l"
+#line 280 "lexer.l"
 {
        if(before_comment == C_CODE) add_to_cbuf(yytext);
        BEGIN(before_comment);
@@ -1561,7 +1568,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 277 "lexer.l"
+#line 284 "lexer.l"
 {
        /* comment, ignore */
        if(before_comment == C_CODE) add_to_cbuf(yytext);
@@ -1569,7 +1576,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 30:
 YY_RULE_SETUP
-#line 281 "lexer.l"
+#line 288 "lexer.l"
 {
        /* comment, ignore */
        if(before_comment == C_CODE) add_to_cbuf(yytext);
@@ -1577,7 +1584,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 31:
 YY_RULE_SETUP
-#line 286 "lexer.l"
+#line 293 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1589,7 +1596,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 294 "lexer.l"
+#line 301 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1601,7 +1608,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 33:
 YY_RULE_SETUP
-#line 303 "lexer.l"
+#line 310 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1613,7 +1620,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 34:
 YY_RULE_SETUP
-#line 311 "lexer.l"
+#line 318 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1625,7 +1632,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 35:
 YY_RULE_SETUP
-#line 319 "lexer.l"
+#line 326 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1637,7 +1644,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 327 "lexer.l"
+#line 334 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth = 1;
@@ -1651,7 +1658,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 337 "lexer.l"
+#line 344 "lexer.l"
 {
                        BEGIN(INITIAL);
                        yylval.cbuf = cbuf;
@@ -1663,42 +1670,42 @@ YY_RULE_SETUP
        YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 346 "lexer.l"
+#line 353 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 347 "lexer.l"
+#line 354 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 40:
 YY_RULE_SETUP
-#line 348 "lexer.l"
+#line 355 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 41:
 YY_RULE_SETUP
-#line 349 "lexer.l"
+#line 356 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 350 "lexer.l"
+#line 357 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 43:
 YY_RULE_SETUP
-#line 351 "lexer.l"
+#line 358 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 44:
 YY_RULE_SETUP
-#line 353 "lexer.l"
+#line 360 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 45:
 YY_RULE_SETUP
-#line 356 "lexer.l"
+#line 363 "lexer.l"
 {
                        BEGIN(CODE_STRING);
                        before_string = C_CODE;
@@ -1707,7 +1714,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 46:
 YY_RULE_SETUP
-#line 361 "lexer.l"
+#line 368 "lexer.l"
 {
                        BEGIN(CODE_STRING);
                        before_string = PROPERTY_CODE_I;
@@ -1716,12 +1723,12 @@ YY_RULE_SETUP
        YY_BREAK
 case 47:
 YY_RULE_SETUP
-#line 366 "lexer.l"
+#line 373 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 48:
 YY_RULE_SETUP
-#line 367 "lexer.l"
+#line 374 "lexer.l"
 {
                        BEGIN(before_string);
                        add_to_cbuf(yytext);
@@ -1735,17 +1742,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 49:
 YY_RULE_SETUP
-#line 377 "lexer.l"
+#line 384 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 50:
 YY_RULE_SETUP
-#line 378 "lexer.l"
+#line 385 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 51:
 YY_RULE_SETUP
-#line 380 "lexer.l"
+#line 387 "lexer.l"
 {
                        parenth_depth++;
                        add_to_cbuf(yytext);
@@ -1753,7 +1760,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 52:
 YY_RULE_SETUP
-#line 384 "lexer.l"
+#line 391 "lexer.l"
 {
                        parenth_depth--;
                        if(parenth_depth<0) {
@@ -1769,17 +1776,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 53:
 YY_RULE_SETUP
-#line 397 "lexer.l"
+#line 404 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 54:
 YY_RULE_SETUP
-#line 398 "lexer.l"
+#line 405 "lexer.l"
 { add_to_cbuf(yytext); }
        YY_BREAK
 case 55:
 YY_RULE_SETUP
-#line 400 "lexer.l"
+#line 407 "lexer.l"
 {
                        static int found_classes = 0;
                        look_for_includes = 2;
@@ -1795,17 +1802,17 @@ YY_RULE_SETUP
        YY_BREAK
 case 56:
 YY_RULE_SETUP
-#line 413 "lexer.l"
+#line 420 "lexer.l"
 { return ERROR; }
        YY_BREAK
 case 57:
 YY_RULE_SETUP
-#line 414 "lexer.l"
+#line 421 "lexer.l"
 { return ENUM; }
        YY_BREAK
 case 58:
 YY_RULE_SETUP
-#line 415 "lexer.l"
+#line 422 "lexer.l"
 { return FLAGS; }
        YY_BREAK
 case 59:
@@ -1813,7 +1820,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 424 "lexer.l"
 {
                        int maj = 0, min = 0, pl = 0;
                        int rmaj = 0, rmin = 0, rpl = 0;
@@ -1857,7 +1864,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 60:
 YY_RULE_SETUP
-#line 458 "lexer.l"
+#line 465 "lexer.l"
 {
                        if(for_cpp) {
                                error_printf(GOB_WARN, line_no,
@@ -1870,122 +1877,122 @@ YY_RULE_SETUP
        YY_BREAK
 case 61:
 YY_RULE_SETUP
-#line 468 "lexer.l"
+#line 475 "lexer.l"
 {return FROM;}
        YY_BREAK
 case 62:
 YY_RULE_SETUP
-#line 470 "lexer.l"
+#line 477 "lexer.l"
 {return VOID;}
        YY_BREAK
 case 63:
 YY_RULE_SETUP
-#line 471 "lexer.l"
+#line 478 "lexer.l"
 {return STRUCT;}
        YY_BREAK
 case 64:
 YY_RULE_SETUP
-#line 472 "lexer.l"
+#line 479 "lexer.l"
 {return UNION;}
        YY_BREAK
 case 65:
 YY_RULE_SETUP
-#line 473 "lexer.l"
+#line 480 "lexer.l"
 {return ENUM;}
        YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 474 "lexer.l"
+#line 481 "lexer.l"
 {return SIGNED;}
        YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 475 "lexer.l"
+#line 482 "lexer.l"
 {return UNSIGNED;}
        YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 476 "lexer.l"
+#line 483 "lexer.l"
 {return LONG;}
        YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 477 "lexer.l"
+#line 484 "lexer.l"
 {return SHORT;}
        YY_BREAK
 case 70:
 YY_RULE_SETUP
-#line 478 "lexer.l"
+#line 485 "lexer.l"
 {return INT;}
        YY_BREAK
 case 71:
 YY_RULE_SETUP
-#line 479 "lexer.l"
+#line 486 "lexer.l"
 {return FLOAT;}
        YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 480 "lexer.l"
+#line 487 "lexer.l"
 {return DOUBLE;}
        YY_BREAK
 case 73:
 YY_RULE_SETUP
-#line 481 "lexer.l"
+#line 488 "lexer.l"
 {return CHAR;}
        YY_BREAK
 case 74:
 YY_RULE_SETUP
-#line 482 "lexer.l"
+#line 489 "lexer.l"
 {return CONST;}
        YY_BREAK
 case 75:
 YY_RULE_SETUP
-#line 484 "lexer.l"
+#line 491 "lexer.l"
 {return THREEDOTS;}
        YY_BREAK
 case 76:
 YY_RULE_SETUP
-#line 486 "lexer.l"
+#line 493 "lexer.l"
 {yylval.line = line_no; return PUBLIC;}
        YY_BREAK
 case 77:
 YY_RULE_SETUP
-#line 487 "lexer.l"
+#line 494 "lexer.l"
 {yylval.line = line_no; return PRIVATE;}
        YY_BREAK
 case 78:
 YY_RULE_SETUP
-#line 488 "lexer.l"
+#line 495 "lexer.l"
 {yylval.line = line_no; return PROTECTED;}
        YY_BREAK
 case 79:
 YY_RULE_SETUP
-#line 489 "lexer.l"
+#line 496 "lexer.l"
 {yylval.line = line_no; return CLASSWIDE;}
        YY_BREAK
 case 80:
 YY_RULE_SETUP
-#line 490 "lexer.l"
+#line 497 "lexer.l"
 {yylval.line = line_no; return ARGUMENT;}
        YY_BREAK
 case 81:
 YY_RULE_SETUP
-#line 491 "lexer.l"
+#line 498 "lexer.l"
 {yylval.line = line_no; return VIRTUAL;}
        YY_BREAK
 case 82:
 YY_RULE_SETUP
-#line 492 "lexer.l"
+#line 499 "lexer.l"
 {yylval.line = line_no; return SIGNAL;}
        YY_BREAK
 case 83:
 YY_RULE_SETUP
-#line 493 "lexer.l"
+#line 500 "lexer.l"
 {yylval.line = line_no; return OVERRIDE;}
        YY_BREAK
 case 84:
 YY_RULE_SETUP
-#line 494 "lexer.l"
+#line 501 "lexer.l"
 {
                                yylval.line = line_no;
                                BEGIN(PROPERTY_CODE);
@@ -1994,67 +2001,67 @@ YY_RULE_SETUP
        YY_BREAK
 case 85:
 YY_RULE_SETUP
-#line 499 "lexer.l"
+#line 506 "lexer.l"
 { yylval.line = line_no; return NICK; }
        YY_BREAK
 case 86:
 YY_RULE_SETUP
-#line 500 "lexer.l"
+#line 507 "lexer.l"
 { yylval.line = line_no; return BLURB; }
        YY_BREAK
 case 87:
 YY_RULE_SETUP
-#line 501 "lexer.l"
+#line 508 "lexer.l"
 { yylval.line = line_no; return MAXIMUM; }
        YY_BREAK
 case 88:
 YY_RULE_SETUP
-#line 502 "lexer.l"
+#line 509 "lexer.l"
 { yylval.line = line_no; return MINIMUM; }
        YY_BREAK
 case 89:
 YY_RULE_SETUP
-#line 503 "lexer.l"
+#line 510 "lexer.l"
 { yylval.line = line_no; return DEFAULT_VALUE; }
        YY_BREAK
 case 90:
 YY_RULE_SETUP
-#line 504 "lexer.l"
+#line 511 "lexer.l"
 { yylval.line = line_no; return FLAGS; }
        YY_BREAK
 case 91:
 YY_RULE_SETUP
-#line 505 "lexer.l"
+#line 512 "lexer.l"
 { yylval.line = line_no; return TYPE; }
        YY_BREAK
 case 92:
 YY_RULE_SETUP
-#line 506 "lexer.l"
+#line 513 "lexer.l"
 { yylval.line = line_no; return FLAGS_TYPE; }
        YY_BREAK
 case 93:
 YY_RULE_SETUP
-#line 507 "lexer.l"
+#line 514 "lexer.l"
 { yylval.line = line_no; return ENUM_TYPE; }
        YY_BREAK
 case 94:
 YY_RULE_SETUP
-#line 508 "lexer.l"
+#line 515 "lexer.l"
 { yylval.line = line_no; return PARAM_TYPE; }
        YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 509 "lexer.l"
+#line 516 "lexer.l"
 { yylval.line = line_no; return BOXED_TYPE; }
        YY_BREAK
 case 96:
 YY_RULE_SETUP
-#line 510 "lexer.l"
+#line 517 "lexer.l"
 { yylval.line = line_no; return OBJECT_TYPE; }
        YY_BREAK
 case 97:
 YY_RULE_SETUP
-#line 511 "lexer.l"
+#line 518 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth = 1;
@@ -2064,7 +2071,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 98:
 YY_RULE_SETUP
-#line 517 "lexer.l"
+#line 524 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth++;
@@ -2073,7 +2080,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 99:
 YY_RULE_SETUP
-#line 522 "lexer.l"
+#line 529 "lexer.l"
 {
                yylval.line = line_no;
                property_paren_depth--;
@@ -2085,7 +2092,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 100:
 YY_RULE_SETUP
-#line 531 "lexer.l"
+#line 538 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return NUMBER;
@@ -2093,7 +2100,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 101:
 YY_RULE_SETUP
-#line 535 "lexer.l"
+#line 542 "lexer.l"
 {
                        /* This is cpp kind of token thingie */
                        if (for_cpp) {
@@ -2106,7 +2113,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 102:
 YY_RULE_SETUP
-#line 544 "lexer.l"
+#line 551 "lexer.l"
 {
                        /* this one is for a classname with a namespace */
                        yylval.id = g_strdup(yytext);
@@ -2115,7 +2122,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 103:
 YY_RULE_SETUP
-#line 549 "lexer.l"
+#line 556 "lexer.l"
 {
                        /* this is for a classname with an empty namespace */
                        yylval.id = g_strdup(yytext);
@@ -2124,7 +2131,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 104:
 YY_RULE_SETUP
-#line 554 "lexer.l"
+#line 561 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return TOKEN;
@@ -2132,7 +2139,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 105:
 YY_RULE_SETUP
-#line 558 "lexer.l"
+#line 565 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return SINGLE_CHAR;
@@ -2140,7 +2147,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 106:
 YY_RULE_SETUP
-#line 563 "lexer.l"
+#line 570 "lexer.l"
 {
                        yylval.id = g_strdup(yytext);
                        return ARRAY_DIM;
@@ -2148,7 +2155,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 107:
 YY_RULE_SETUP
-#line 568 "lexer.l"
+#line 575 "lexer.l"
 {
                        BEGIN(CLASS_CODE_I);
                        return '{';
@@ -2156,7 +2163,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 108:
 YY_RULE_SETUP
-#line 572 "lexer.l"
+#line 579 "lexer.l"
 {
                        BEGIN(C_CODE);
                        parenth_depth=1;
@@ -2169,7 +2176,7 @@ YY_RULE_SETUP
        YY_BREAK
 case 109:
 YY_RULE_SETUP
-#line 581 "lexer.l"
+#line 588 "lexer.l"
 {
                                BEGIN(INITIAL);
                                return '}';
@@ -2177,12 +2184,12 @@ YY_RULE_SETUP
        YY_BREAK
 case 110:
 YY_RULE_SETUP
-#line 586 "lexer.l"
+#line 593 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
 case 111:
 YY_RULE_SETUP
-#line 588 "lexer.l"
+#line 595 "lexer.l"
 {
                        yylval.line = line_no;
                        return yytext[0];
@@ -2190,15 +2197,15 @@ YY_RULE_SETUP
        YY_BREAK
 case 112:
 YY_RULE_SETUP
-#line 593 "lexer.l"
+#line 600 "lexer.l"
 ;  /*ignore*/
        YY_BREAK
 case 113:
 YY_RULE_SETUP
-#line 595 "lexer.l"
+#line 602 "lexer.l"
 ECHO;
        YY_BREAK
-#line 2202 "lexer.c"
+#line 2209 "lexer.c"
                        case YY_STATE_EOF(INITIAL):
                        case YY_STATE_EOF(COMMENT):
                        case YY_STATE_EOF(C_CODE):
@@ -2585,6 +2592,7 @@ register char *yy_bp;
 #endif /* ifndef YY_NO_UNPUT */
 
 
+#ifndef YY_NO_INPUT
 #ifdef __cplusplus
 static int yyinput()
 #else
@@ -2657,7 +2665,7 @@ static int input()
 
        return c;
        }
-
+#endif /* YY_NO_INPUT */
 
 #ifdef YY_USE_PROTOS
 void yyrestart( FILE *input_file )
@@ -3085,16 +3093,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 602 "lexer.l"