Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove the #line directive from the flex generated files since they fool borland...
[simgrid.git] / src / surf / surfxml.c
index fb270e8..3365f52 100644 (file)
@@ -1,6 +1,5 @@
-#line 2 "surf/surfxml.c"
 
-#line 4 "surf/surfxml.c"
+#line 3 "surf/surfxml.c"
 
 #define  YY_INT_ALIGNED short int
 
@@ -9,7 +8,7 @@
 #define FLEX_SCANNER
 #define YY_FLEX_MAJOR_VERSION 2
 #define YY_FLEX_MINOR_VERSION 5
-#define YY_FLEX_SUBMINOR_VERSION 33
+#define YY_FLEX_SUBMINOR_VERSION 31
 #if YY_FLEX_SUBMINOR_VERSION > 0
 #define FLEX_BETA
 #endif
 
 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
 
-#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
-
+#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
 #include <inttypes.h>
 typedef int8_t flex_int8_t;
 typedef uint8_t flex_uint8_t;
@@ -143,10 +134,6 @@ typedef unsigned int flex_uint32_t;
 #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;
@@ -293,7 +280,7 @@ int surf_parse_leng;
 
 /* Points to current character in buffer. */
 static char *yy_c_buf_p = (char *) 0;
-static int yy_init = 0;                /* whether we need to initialize */
+static int yy_init = 1;                /* whether we need to initialize */
 static int yy_start = 0;       /* start state number */
 
 /* Flag which is used to allow surf_parse_wrap()'s to do buffer switches
@@ -1757,13 +1744,13 @@ int surf_parse__flex_debug = 0;
 #define YY_MORE_ADJ 0
 #define YY_RESTORE_YY_MORE_OFFSET
 char *surf_parse_text;
-#line 1 "surf/surfxml.l"
-/* Validating XML processor for surfxml.dtd.
- * Generated 2006/05/29 23:03:05.
+/* Validating XML processor for surf/surfxml.dtd.
+ * Generated 2006/07/18 21:02:15.
  *
  * This program was generated with the FleXML XML processor generator.
- * FleXML is Copyright © 1999-2005 Kristoffer Rose.  All rights reserved.
- * (Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp).
+ * FleXML is Copyright (C) 1999-2005 Kristoffer Rose.  All rights reserved.
+ * FleXML is Copyright (C) 2003-2006 Martin Quinson.  All rights reserved.
+ * (Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp).
  * 
  * There are two, intertwined parts to this program, part A and part B.
  *
@@ -1771,8 +1758,8 @@ char *surf_parse_text;
  * ------
  * 
  * Some parts, here collectively called "Part A", are found in the 
- * FleXML package.  They are Copyright © 1999-2005 Kristoffer Rose. 
- * All rights reserved.
+ * FleXML package.  They are Copyright (C) 1999-2005 Kristoffer Rose
+ * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved.
  *
  * You can redistribute, use, perform, display and/or modify "Part A"
  * provided the following two conditions hold:
@@ -1803,13 +1790,12 @@ char *surf_parse_text;
  * by the author of or contributors to FleXML.
  * 
  */
-#line 48 "surf/surfxml.l"
 
 /* Version strings. */
 const char rcs_surfxml_flexml_skeleton[] =
- "$" "Id: skel,v 1.28 2006/03/21 12:04:13 legranda Exp $";
+ "$" "Id: skel,v 1.31 2006/07/18 18:21:13 mquinson Exp $";
 const char rcs_surfxml_flexml[] =
- "$" "Id: flexml.pl,v 1.48 2006/03/21 13:09:12 mquinson Exp $";
+ "$" "Id: flexml.pl,v 1.53 2006/07/18 12:12:06 mquinson Exp $";
 
 /* ANSI headers. */
 #include <unistd.h>
@@ -1889,7 +1875,7 @@ static void cleanup(void);
 static char bufferstack[FLEXML_BUFFERSTACKSIZE];
 static char* limit = bufferstack + FLEXML_BUFFERSTACKSIZE;
 typedef struct BufferLast_s {
-  struct BufferLast_s *old; char* saved; char new1[1];
+  struct BufferLast_s *old; const char* saved; char new1[1];
 } BufferLast;
 #ifdef FLEXML_HasMixed
 static BufferLast* last = (BufferLast*)0;
@@ -1913,7 +1899,7 @@ static void bufferliteral(char c, const char** pp, char* text)
 }
 
 #ifdef FLEXML_HasMixed
-static void pushbuffer(char* p)
+static void pushbuffer(const char* p)
 {
   BufferLast* l = (BufferLast*)next;
   assert(next < limit);
@@ -1923,7 +1909,7 @@ static void pushbuffer(char* p)
   last = l;
 }
 
-static char* popbuffer(void)
+static const char* popbuffer(void)
 {
   BufferLast* l = last;
   assert(last != (BufferLast*)0);
@@ -1960,19 +1946,8 @@ static char* popbuffer(void)
  * IMPOSSIBLE  dummy to permit disabling rules; must be last
  */
 
-
-
-
-
-
-
-
-
-
-#line 240 "surf/surfxml.l"
 /* State names. */
 const char* *surfxml_statenames=NULL;
-#line 1976 "surf/surfxml.c"
 
 #define INITIAL 0
 #define PROLOG 1
@@ -2033,8 +2008,6 @@ const char* *surfxml_statenames=NULL;
 #define YY_EXTRA_TYPE void *
 #endif
 
-static int yy_init_globals (void );
-
 /* Macros after this point can all be overridden by user definitions in
  * section 1.
  */
@@ -2067,7 +2040,7 @@ static int input (void );
 
         static int yy_start_stack_ptr = 0;
         static int yy_start_stack_depth = 0;
-        static int *yy_start_stack = NULL;
+        static int *yy_start_stack = 0;
     
     static void yy_push_state (int new_state );
     
@@ -2176,9 +2149,6 @@ YY_DECL
        register char *yy_cp, *yy_bp;
        register int yy_act;
     
-#line 244 "surf/surfxml.l"
-
-
  /* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */
  SET(PROLOG);
   /* FleXML_init */
@@ -2232,11 +2202,9 @@ YY_DECL
 
  /* COMMENTS and PIs: handled uniformly for efficiency. */
 
-#line 2236 "surf/surfxml.c"
-
-       if ( !(yy_init) )
+       if ( (yy_init) )
                {
-               (yy_init) = 1;
+               (yy_init) = 0;
 
 #ifdef YY_USER_INIT
                YY_USER_INIT;
@@ -2327,52 +2295,39 @@ do_action:      /* This label is used only to access EOF actions. */
 
 case 1:
 YY_RULE_SETUP
-#line 300 "surf/surfxml.l"
 ENTER(INCOMMENT);
        YY_BREAK
 case 2:
 YY_RULE_SETUP
-#line 301 "surf/surfxml.l"
 ENTER(INPI);
        YY_BREAK
 
-
 case 3:
 YY_RULE_SETUP
-#line 304 "surf/surfxml.l"
 LEAVE;
        YY_BREAK
 case 4:
-#line 306 "surf/surfxml.l"
 case 5:
-#line 307 "surf/surfxml.l"
 case 6:
 /* rule 6 can match eol */
 YY_RULE_SETUP
-#line 307 "surf/surfxml.l"
 SKIP;
        YY_BREAK
 case YY_STATE_EOF(INCOMMENT):
-#line 308 "surf/surfxml.l"
 FAIL("EOF in comment.");
        YY_BREAK
 
-
 case 7:
 YY_RULE_SETUP
-#line 311 "surf/surfxml.l"
 LEAVE;
        YY_BREAK
 case 8:
-#line 313 "surf/surfxml.l"
 case 9:
 /* rule 9 can match eol */
 YY_RULE_SETUP
-#line 313 "surf/surfxml.l"
 SKIP;
        YY_BREAK
 case YY_STATE_EOF(INPI):
-#line 314 "surf/surfxml.l"
 FAIL("EOF in PI (processing instruction).");
        YY_BREAK
 
@@ -2380,7 +2335,6 @@ FAIL("EOF in PI (processing instruction).");
 case 10:
 /* rule 10 can match eol */
 YY_RULE_SETUP
-#line 319 "surf/surfxml.l"
 SKIP;
        YY_BREAK
 /* PROLOG: determine root element and process it. */
@@ -2388,79 +2342,65 @@ SKIP;
 case 11:
 /* rule 11 can match eol */
 YY_RULE_SETUP
-#line 324 "surf/surfxml.l"
 SET(DOCTYPE); 
        YY_BREAK
 case 12:
 /* rule 12 can match eol */
 YY_RULE_SETUP
-#line 325 "surf/surfxml.l"
 FAIL("Bad declaration %s.",surf_parse_text);
        YY_BREAK
 
-
 case 13:
 /* rule 13 can match eol */
 YY_RULE_SETUP
-#line 329 "surf/surfxml.l"
 SET(ROOT_surfxml_argument);
        YY_BREAK
 case 14:
 /* rule 14 can match eol */
 YY_RULE_SETUP
-#line 330 "surf/surfxml.l"
 SET(ROOT_surfxml_route_element);
        YY_BREAK
 case 15:
 /* rule 15 can match eol */
 YY_RULE_SETUP
-#line 331 "surf/surfxml.l"
 SET(ROOT_surfxml_cpu);
        YY_BREAK
 case 16:
 /* rule 16 can match eol */
 YY_RULE_SETUP
-#line 332 "surf/surfxml.l"
 SET(ROOT_surfxml_include);
        YY_BREAK
 case 17:
 /* rule 17 can match eol */
 YY_RULE_SETUP
-#line 333 "surf/surfxml.l"
 SET(ROOT_surfxml_route);
        YY_BREAK
 case 18:
 /* rule 18 can match eol */
 YY_RULE_SETUP
-#line 334 "surf/surfxml.l"
 SET(ROOT_surfxml_platform_description);
        YY_BREAK
 case 19:
 /* rule 19 can match eol */
 YY_RULE_SETUP
-#line 335 "surf/surfxml.l"
 SET(ROOT_surfxml_network_link);
        YY_BREAK
 case 20:
 /* rule 20 can match eol */
 YY_RULE_SETUP
-#line 336 "surf/surfxml.l"
 SET(ROOT_surfxml_process);
        YY_BREAK
 case 21:
 /* rule 21 can match eol */
 YY_RULE_SETUP
-#line 337 "surf/surfxml.l"
 FAIL("Bad declaration %s.",surf_parse_text);
        YY_BREAK
 case 22:
 YY_RULE_SETUP
-#line 338 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in prolog.", surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(PROLOG):
 case YY_STATE_EOF(DOCTYPE):
-#line 339 "surf/surfxml.l"
 FAIL("EOF in prolog.");
        YY_BREAK
 
@@ -2469,7 +2409,6 @@ FAIL("EOF in prolog.");
 case 23:
 /* rule 23 can match eol */
 YY_RULE_SETUP
-#line 346 "surf/surfxml.l"
 {
   A_surfxml_platform_description_version = "0.0";
   ENTER(AL_surfxml_platform_description);
@@ -2479,25 +2418,21 @@ YY_RULE_SETUP
 case 24:
 /* rule 24 can match eol */
 YY_RULE_SETUP
-#line 352 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_platform_description_version);
        YY_BREAK
 case 25:
 /* rule 25 can match eol */
 YY_RULE_SETUP
-#line 353 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_platform_description_version);
        YY_BREAK
 case 26:
 YY_RULE_SETUP
-#line 355 "surf/surfxml.l"
 {
   LEAVE; STag_surfxml_platform_description();surfxml_pcdata = NULL; ENTER(S_surfxml_platform_description);
  }
        YY_BREAK
 case 27:
 YY_RULE_SETUP
-#line 358 "surf/surfxml.l"
 {
   LEAVE; STag_surfxml_platform_description(); surfxml_pcdata = NULL; ETag_surfxml_platform_description();
   switch (YY_START) {
@@ -2507,24 +2442,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 28:
 YY_RULE_SETUP
-#line 364 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of platform_description element.", surf_parse_text[0]);
        YY_BREAK
 case 29:
 YY_RULE_SETUP
-#line 365 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `platform_description' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_platform_description):
-#line 366 "surf/surfxml.l"
 FAIL("EOF in attribute list of `platform_description' element.");
        YY_BREAK
 
-
 case 30:
 /* rule 30 can match eol */
 YY_RULE_SETUP
-#line 370 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_platform_description();
@@ -2536,25 +2466,21 @@ YY_RULE_SETUP
 case 31:
 /* rule 31 can match eol */
 YY_RULE_SETUP
-#line 377 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</platform_description>' expected.",surf_parse_text);
        YY_BREAK
 case 32:
 YY_RULE_SETUP
-#line 378 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</platform_description>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_platform_description):
 case YY_STATE_EOF(S_surfxml_platform_description_2):
 case YY_STATE_EOF(S_surfxml_platform_description):
-#line 379 "surf/surfxml.l"
 FAIL("Premature EOF: `</platform_description>' expected.");
        YY_BREAK
 
 case 33:
 /* rule 33 can match eol */
 YY_RULE_SETUP
-#line 382 "surf/surfxml.l"
 {
   A_surfxml_include_file = NULL;
   ENTER(AL_surfxml_include);
@@ -2564,18 +2490,15 @@ YY_RULE_SETUP
 case 34:
 /* rule 34 can match eol */
 YY_RULE_SETUP
-#line 388 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_include_file);
        YY_BREAK
 case 35:
 /* rule 35 can match eol */
 YY_RULE_SETUP
-#line 389 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_include_file);
        YY_BREAK
 case 36:
 YY_RULE_SETUP
-#line 391 "surf/surfxml.l"
 {
   if (!A_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
   LEAVE; STag_surfxml_include();surfxml_pcdata = NULL; ENTER(S_surfxml_include);
@@ -2583,7 +2506,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 37:
 YY_RULE_SETUP
-#line 395 "surf/surfxml.l"
 {
   if (!A_surfxml_include_file) FAIL("Required attribute `file' not set for `include' element.");
   LEAVE; STag_surfxml_include(); surfxml_pcdata = NULL; ETag_surfxml_include();
@@ -2596,24 +2518,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 38:
 YY_RULE_SETUP
-#line 404 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of include element.", surf_parse_text[0]);
        YY_BREAK
 case 39:
 YY_RULE_SETUP
-#line 405 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `include' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_include):
-#line 406 "surf/surfxml.l"
 FAIL("EOF in attribute list of `include' element.");
        YY_BREAK
 
-
 case 40:
 /* rule 40 can match eol */
 YY_RULE_SETUP
-#line 410 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_include();
@@ -2627,25 +2544,21 @@ YY_RULE_SETUP
 case 41:
 /* rule 41 can match eol */
 YY_RULE_SETUP
-#line 419 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</include>' expected.",surf_parse_text);
        YY_BREAK
 case 42:
 YY_RULE_SETUP
-#line 420 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</include>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_include):
 case YY_STATE_EOF(S_surfxml_include):
 case YY_STATE_EOF(S_surfxml_include_2):
-#line 421 "surf/surfxml.l"
 FAIL("Premature EOF: `</include>' expected.");
        YY_BREAK
 
 case 43:
 /* rule 43 can match eol */
 YY_RULE_SETUP
-#line 424 "surf/surfxml.l"
 {
   A_surfxml_cpu_name = NULL;
   A_surfxml_cpu_power = NULL;
@@ -2664,132 +2577,109 @@ YY_RULE_SETUP
 case 44:
 /* rule 44 can match eol */
 YY_RULE_SETUP
-#line 439 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_name);
        YY_BREAK
 case 45:
 /* rule 45 can match eol */
 YY_RULE_SETUP
-#line 440 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_name);
        YY_BREAK
 case 46:
 /* rule 46 can match eol */
 YY_RULE_SETUP
-#line 442 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_power);
        YY_BREAK
 case 47:
 /* rule 47 can match eol */
 YY_RULE_SETUP
-#line 443 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_power);
        YY_BREAK
 case 48:
 /* rule 48 can match eol */
 YY_RULE_SETUP
-#line 445 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_availability);
        YY_BREAK
 case 49:
 /* rule 49 can match eol */
 YY_RULE_SETUP
-#line 446 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_availability);
        YY_BREAK
 case 50:
 /* rule 50 can match eol */
 YY_RULE_SETUP
-#line 448 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_availability_file);
        YY_BREAK
 case 51:
 /* rule 51 can match eol */
 YY_RULE_SETUP
-#line 449 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_availability_file);
        YY_BREAK
 case 52:
 /* rule 52 can match eol */
-#line 452 "surf/surfxml.l"
 case 53:
 /* rule 53 can match eol */
 YY_RULE_SETUP
-#line 452 "surf/surfxml.l"
 A_surfxml_cpu_state = A_surfxml_cpu_state_ON;
        YY_BREAK
 case 54:
 /* rule 54 can match eol */
-#line 454 "surf/surfxml.l"
 case 55:
 /* rule 55 can match eol */
 YY_RULE_SETUP
-#line 454 "surf/surfxml.l"
 A_surfxml_cpu_state = A_surfxml_cpu_state_OFF;
        YY_BREAK
 case 56:
 /* rule 56 can match eol */
 YY_RULE_SETUP
-#line 456 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_state_file);
        YY_BREAK
 case 57:
 /* rule 57 can match eol */
 YY_RULE_SETUP
-#line 457 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_state_file);
        YY_BREAK
 case 58:
 /* rule 58 can match eol */
 YY_RULE_SETUP
-#line 459 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_send);
        YY_BREAK
 case 59:
 /* rule 59 can match eol */
 YY_RULE_SETUP
-#line 460 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_send);
        YY_BREAK
 case 60:
 /* rule 60 can match eol */
 YY_RULE_SETUP
-#line 462 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_recv);
        YY_BREAK
 case 61:
 /* rule 61 can match eol */
 YY_RULE_SETUP
-#line 463 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_recv);
        YY_BREAK
 case 62:
 /* rule 62 can match eol */
 YY_RULE_SETUP
-#line 465 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_interference_send_recv);
        YY_BREAK
 case 63:
 /* rule 63 can match eol */
 YY_RULE_SETUP
-#line 466 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_interference_send_recv);
        YY_BREAK
 case 64:
 /* rule 64 can match eol */
 YY_RULE_SETUP
-#line 468 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_cpu_max_outgoing_rate);
        YY_BREAK
 case 65:
 /* rule 65 can match eol */
 YY_RULE_SETUP
-#line 469 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_cpu_max_outgoing_rate);
        YY_BREAK
 case 66:
 YY_RULE_SETUP
-#line 471 "surf/surfxml.l"
 {
   if (!A_surfxml_cpu_name) FAIL("Required attribute `name' not set for `cpu' element.");
   if (!A_surfxml_cpu_power) FAIL("Required attribute `power' not set for `cpu' element.");
@@ -2798,7 +2688,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 67:
 YY_RULE_SETUP
-#line 476 "surf/surfxml.l"
 {
   if (!A_surfxml_cpu_name) FAIL("Required attribute `name' not set for `cpu' element.");
   if (!A_surfxml_cpu_power) FAIL("Required attribute `power' not set for `cpu' element.");
@@ -2812,24 +2701,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 68:
 YY_RULE_SETUP
-#line 486 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of cpu element.", surf_parse_text[0]);
        YY_BREAK
 case 69:
 YY_RULE_SETUP
-#line 487 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `cpu' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_cpu):
-#line 488 "surf/surfxml.l"
 FAIL("EOF in attribute list of `cpu' element.");
        YY_BREAK
 
-
 case 70:
 /* rule 70 can match eol */
 YY_RULE_SETUP
-#line 492 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_cpu();
@@ -2843,23 +2727,19 @@ YY_RULE_SETUP
 case 71:
 /* rule 71 can match eol */
 YY_RULE_SETUP
-#line 501 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</cpu>' expected.",surf_parse_text);
        YY_BREAK
 case 72:
 YY_RULE_SETUP
-#line 502 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</cpu>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_cpu):
-#line 503 "surf/surfxml.l"
 FAIL("Premature EOF: `</cpu>' expected.");
        YY_BREAK
 
 case 73:
 /* rule 73 can match eol */
 YY_RULE_SETUP
-#line 506 "surf/surfxml.l"
 {
   A_surfxml_network_link_name = NULL;
   A_surfxml_network_link_bandwidth = NULL;
@@ -2876,114 +2756,93 @@ YY_RULE_SETUP
 case 74:
 /* rule 74 can match eol */
 YY_RULE_SETUP
-#line 519 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_name);
        YY_BREAK
 case 75:
 /* rule 75 can match eol */
 YY_RULE_SETUP
-#line 520 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_name);
        YY_BREAK
 case 76:
 /* rule 76 can match eol */
 YY_RULE_SETUP
-#line 522 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_bandwidth);
        YY_BREAK
 case 77:
 /* rule 77 can match eol */
 YY_RULE_SETUP
-#line 523 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_bandwidth);
        YY_BREAK
 case 78:
 /* rule 78 can match eol */
 YY_RULE_SETUP
-#line 525 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_bandwidth_file);
        YY_BREAK
 case 79:
 /* rule 79 can match eol */
 YY_RULE_SETUP
-#line 526 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_bandwidth_file);
        YY_BREAK
 case 80:
 /* rule 80 can match eol */
 YY_RULE_SETUP
-#line 528 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_latency);
        YY_BREAK
 case 81:
 /* rule 81 can match eol */
 YY_RULE_SETUP
-#line 529 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_latency);
        YY_BREAK
 case 82:
 /* rule 82 can match eol */
 YY_RULE_SETUP
-#line 531 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_latency_file);
        YY_BREAK
 case 83:
 /* rule 83 can match eol */
 YY_RULE_SETUP
-#line 532 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_latency_file);
        YY_BREAK
 case 84:
 /* rule 84 can match eol */
-#line 535 "surf/surfxml.l"
 case 85:
 /* rule 85 can match eol */
 YY_RULE_SETUP
-#line 535 "surf/surfxml.l"
 A_surfxml_network_link_state = A_surfxml_network_link_state_ON;
        YY_BREAK
 case 86:
 /* rule 86 can match eol */
-#line 537 "surf/surfxml.l"
 case 87:
 /* rule 87 can match eol */
 YY_RULE_SETUP
-#line 537 "surf/surfxml.l"
 A_surfxml_network_link_state = A_surfxml_network_link_state_OFF;
        YY_BREAK
 case 88:
 /* rule 88 can match eol */
 YY_RULE_SETUP
-#line 539 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_network_link_state_file);
        YY_BREAK
 case 89:
 /* rule 89 can match eol */
 YY_RULE_SETUP
-#line 540 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_network_link_state_file);
        YY_BREAK
 case 90:
 /* rule 90 can match eol */
-#line 543 "surf/surfxml.l"
 case 91:
 /* rule 91 can match eol */
 YY_RULE_SETUP
-#line 543 "surf/surfxml.l"
 A_surfxml_network_link_sharing_policy = A_surfxml_network_link_sharing_policy_SHARED;
        YY_BREAK
 case 92:
 /* rule 92 can match eol */
-#line 545 "surf/surfxml.l"
 case 93:
 /* rule 93 can match eol */
 YY_RULE_SETUP
-#line 545 "surf/surfxml.l"
 A_surfxml_network_link_sharing_policy = A_surfxml_network_link_sharing_policy_FATPIPE;
        YY_BREAK
 case 94:
 YY_RULE_SETUP
-#line 547 "surf/surfxml.l"
 {
   if (!A_surfxml_network_link_name) FAIL("Required attribute `name' not set for `network_link' element.");
   if (!A_surfxml_network_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `network_link' element.");
@@ -2992,7 +2851,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 95:
 YY_RULE_SETUP
-#line 552 "surf/surfxml.l"
 {
   if (!A_surfxml_network_link_name) FAIL("Required attribute `name' not set for `network_link' element.");
   if (!A_surfxml_network_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `network_link' element.");
@@ -3006,24 +2864,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 96:
 YY_RULE_SETUP
-#line 562 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of network_link element.", surf_parse_text[0]);
        YY_BREAK
 case 97:
 YY_RULE_SETUP
-#line 563 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `network_link' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_network_link):
-#line 564 "surf/surfxml.l"
 FAIL("EOF in attribute list of `network_link' element.");
        YY_BREAK
 
-
 case 98:
 /* rule 98 can match eol */
 YY_RULE_SETUP
-#line 568 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_network_link();
@@ -3037,23 +2890,19 @@ YY_RULE_SETUP
 case 99:
 /* rule 99 can match eol */
 YY_RULE_SETUP
-#line 577 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</network_link>' expected.",surf_parse_text);
        YY_BREAK
 case 100:
 YY_RULE_SETUP
-#line 578 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</network_link>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_network_link):
-#line 579 "surf/surfxml.l"
 FAIL("Premature EOF: `</network_link>' expected.");
        YY_BREAK
 
 case 101:
 /* rule 101 can match eol */
 YY_RULE_SETUP
-#line 582 "surf/surfxml.l"
 {
   A_surfxml_route_src = NULL;
   A_surfxml_route_dst = NULL;
@@ -3068,78 +2917,65 @@ YY_RULE_SETUP
 case 102:
 /* rule 102 can match eol */
 YY_RULE_SETUP
-#line 593 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_src);
        YY_BREAK
 case 103:
 /* rule 103 can match eol */
 YY_RULE_SETUP
-#line 594 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_src);
        YY_BREAK
 case 104:
 /* rule 104 can match eol */
 YY_RULE_SETUP
-#line 596 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_dst);
        YY_BREAK
 case 105:
 /* rule 105 can match eol */
 YY_RULE_SETUP
-#line 597 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_dst);
        YY_BREAK
 case 106:
 /* rule 106 can match eol */
 YY_RULE_SETUP
-#line 599 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_src);
        YY_BREAK
 case 107:
 /* rule 107 can match eol */
 YY_RULE_SETUP
-#line 600 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_src);
        YY_BREAK
 case 108:
 /* rule 108 can match eol */
 YY_RULE_SETUP
-#line 602 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_dst);
        YY_BREAK
 case 109:
 /* rule 109 can match eol */
 YY_RULE_SETUP
-#line 603 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_dst);
        YY_BREAK
 case 110:
 /* rule 110 can match eol */
 YY_RULE_SETUP
-#line 605 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_src_with_other_recv);
        YY_BREAK
 case 111:
 /* rule 111 can match eol */
 YY_RULE_SETUP
-#line 606 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_src_with_other_recv);
        YY_BREAK
 case 112:
 /* rule 112 can match eol */
 YY_RULE_SETUP
-#line 608 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_impact_on_dst_with_other_send);
        YY_BREAK
 case 113:
 /* rule 113 can match eol */
 YY_RULE_SETUP
-#line 609 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_impact_on_dst_with_other_send);
        YY_BREAK
 case 114:
 YY_RULE_SETUP
-#line 611 "surf/surfxml.l"
 {
   if (!A_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
   if (!A_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
@@ -3148,7 +2984,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 115:
 YY_RULE_SETUP
-#line 616 "surf/surfxml.l"
 {
   if (!A_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element.");
   if (!A_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element.");
@@ -3162,24 +2997,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 116:
 YY_RULE_SETUP
-#line 626 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of route element.", surf_parse_text[0]);
        YY_BREAK
 case 117:
 YY_RULE_SETUP
-#line 627 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `route' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_route):
-#line 628 "surf/surfxml.l"
 FAIL("EOF in attribute list of `route' element.");
        YY_BREAK
 
-
 case 118:
 /* rule 118 can match eol */
 YY_RULE_SETUP
-#line 632 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_route();
@@ -3193,25 +3023,21 @@ YY_RULE_SETUP
 case 119:
 /* rule 119 can match eol */
 YY_RULE_SETUP
-#line 641 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</route>' expected.",surf_parse_text);
        YY_BREAK
 case 120:
 YY_RULE_SETUP
-#line 642 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</route>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(S_surfxml_route):
 case YY_STATE_EOF(S_surfxml_route_2):
 case YY_STATE_EOF(E_surfxml_route):
-#line 643 "surf/surfxml.l"
 FAIL("Premature EOF: `</route>' expected.");
        YY_BREAK
 
 case 121:
 /* rule 121 can match eol */
 YY_RULE_SETUP
-#line 646 "surf/surfxml.l"
 {
   A_surfxml_route_element_name = NULL;
   ENTER(AL_surfxml_route_element);
@@ -3221,18 +3047,15 @@ YY_RULE_SETUP
 case 122:
 /* rule 122 can match eol */
 YY_RULE_SETUP
-#line 652 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_route_element_name);
        YY_BREAK
 case 123:
 /* rule 123 can match eol */
 YY_RULE_SETUP
-#line 653 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_route_element_name);
        YY_BREAK
 case 124:
 YY_RULE_SETUP
-#line 655 "surf/surfxml.l"
 {
   if (!A_surfxml_route_element_name) FAIL("Required attribute `name' not set for `route_element' element.");
   LEAVE; STag_surfxml_route_element();surfxml_pcdata = NULL; ENTER(E_surfxml_route_element);
@@ -3240,7 +3063,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 125:
 YY_RULE_SETUP
-#line 659 "surf/surfxml.l"
 {
   if (!A_surfxml_route_element_name) FAIL("Required attribute `name' not set for `route_element' element.");
   LEAVE; STag_surfxml_route_element(); surfxml_pcdata = NULL; ETag_surfxml_route_element();
@@ -3252,24 +3074,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 126:
 YY_RULE_SETUP
-#line 667 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of route_element element.", surf_parse_text[0]);
        YY_BREAK
 case 127:
 YY_RULE_SETUP
-#line 668 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `route_element' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_route_element):
-#line 669 "surf/surfxml.l"
 FAIL("EOF in attribute list of `route_element' element.");
        YY_BREAK
 
-
 case 128:
 /* rule 128 can match eol */
 YY_RULE_SETUP
-#line 673 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_route_element();
@@ -3282,23 +3099,19 @@ YY_RULE_SETUP
 case 129:
 /* rule 129 can match eol */
 YY_RULE_SETUP
-#line 681 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</route_element>' expected.",surf_parse_text);
        YY_BREAK
 case 130:
 YY_RULE_SETUP
-#line 682 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</route_element>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_route_element):
-#line 683 "surf/surfxml.l"
 FAIL("Premature EOF: `</route_element>' expected.");
        YY_BREAK
 
 case 131:
 /* rule 131 can match eol */
 YY_RULE_SETUP
-#line 686 "surf/surfxml.l"
 {
   A_surfxml_process_host = NULL;
   A_surfxml_process_function = NULL;
@@ -3311,54 +3124,45 @@ YY_RULE_SETUP
 case 132:
 /* rule 132 can match eol */
 YY_RULE_SETUP
-#line 695 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_process_host);
        YY_BREAK
 case 133:
 /* rule 133 can match eol */
 YY_RULE_SETUP
-#line 696 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_process_host);
        YY_BREAK
 case 134:
 /* rule 134 can match eol */
 YY_RULE_SETUP
-#line 698 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_process_function);
        YY_BREAK
 case 135:
 /* rule 135 can match eol */
 YY_RULE_SETUP
-#line 699 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_process_function);
        YY_BREAK
 case 136:
 /* rule 136 can match eol */
 YY_RULE_SETUP
-#line 701 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_process_start_time);
        YY_BREAK
 case 137:
 /* rule 137 can match eol */
 YY_RULE_SETUP
-#line 702 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_process_start_time);
        YY_BREAK
 case 138:
 /* rule 138 can match eol */
 YY_RULE_SETUP
-#line 704 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_process_kill_time);
        YY_BREAK
 case 139:
 /* rule 139 can match eol */
 YY_RULE_SETUP
-#line 705 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_process_kill_time);
        YY_BREAK
 case 140:
 YY_RULE_SETUP
-#line 707 "surf/surfxml.l"
 {
   if (!A_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
   if (!A_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
@@ -3367,7 +3171,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 141:
 YY_RULE_SETUP
-#line 712 "surf/surfxml.l"
 {
   if (!A_surfxml_process_host) FAIL("Required attribute `host' not set for `process' element.");
   if (!A_surfxml_process_function) FAIL("Required attribute `function' not set for `process' element.");
@@ -3381,24 +3184,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 142:
 YY_RULE_SETUP
-#line 722 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of process element.", surf_parse_text[0]);
        YY_BREAK
 case 143:
 YY_RULE_SETUP
-#line 723 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `process' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_process):
-#line 724 "surf/surfxml.l"
 FAIL("EOF in attribute list of `process' element.");
        YY_BREAK
 
-
 case 144:
 /* rule 144 can match eol */
 YY_RULE_SETUP
-#line 728 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_process();
@@ -3412,25 +3210,21 @@ YY_RULE_SETUP
 case 145:
 /* rule 145 can match eol */
 YY_RULE_SETUP
-#line 737 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</process>' expected.",surf_parse_text);
        YY_BREAK
 case 146:
 YY_RULE_SETUP
-#line 738 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</process>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(S_surfxml_process):
 case YY_STATE_EOF(E_surfxml_process):
 case YY_STATE_EOF(S_surfxml_process_2):
-#line 739 "surf/surfxml.l"
 FAIL("Premature EOF: `</process>' expected.");
        YY_BREAK
 
 case 147:
 /* rule 147 can match eol */
 YY_RULE_SETUP
-#line 742 "surf/surfxml.l"
 {
   A_surfxml_argument_value = NULL;
   ENTER(AL_surfxml_argument);
@@ -3440,18 +3234,15 @@ YY_RULE_SETUP
 case 148:
 /* rule 148 can match eol */
 YY_RULE_SETUP
-#line 748 "surf/surfxml.l"
 ENTER(VALUE1); BUFFERSET(A_surfxml_argument_value);
        YY_BREAK
 case 149:
 /* rule 149 can match eol */
 YY_RULE_SETUP
-#line 749 "surf/surfxml.l"
 ENTER(VALUE2); BUFFERSET(A_surfxml_argument_value);
        YY_BREAK
 case 150:
 YY_RULE_SETUP
-#line 751 "surf/surfxml.l"
 {
   if (!A_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
   LEAVE; STag_surfxml_argument();surfxml_pcdata = NULL; ENTER(E_surfxml_argument);
@@ -3459,7 +3250,6 @@ YY_RULE_SETUP
        YY_BREAK
 case 151:
 YY_RULE_SETUP
-#line 755 "surf/surfxml.l"
 {
   if (!A_surfxml_argument_value) FAIL("Required attribute `value' not set for `argument' element.");
   LEAVE; STag_surfxml_argument(); surfxml_pcdata = NULL; ETag_surfxml_argument();
@@ -3471,24 +3261,19 @@ YY_RULE_SETUP
        YY_BREAK
 case 152:
 YY_RULE_SETUP
-#line 763 "surf/surfxml.l"
 FAIL("Unexpected character `%c' in attribute list of argument element.", surf_parse_text[0]);
        YY_BREAK
 case 153:
 YY_RULE_SETUP
-#line 764 "surf/surfxml.l"
 FAIL("Bad attribute `%s' in `argument' element start tag.",surf_parse_text);
        YY_BREAK
 case YY_STATE_EOF(AL_surfxml_argument):
-#line 765 "surf/surfxml.l"
 FAIL("EOF in attribute list of `argument' element.");
        YY_BREAK
 
-
 case 154:
 /* rule 154 can match eol */
 YY_RULE_SETUP
-#line 769 "surf/surfxml.l"
 {
   LEAVE;
   ETag_surfxml_argument();
@@ -3501,16 +3286,13 @@ YY_RULE_SETUP
 case 155:
 /* rule 155 can match eol */
 YY_RULE_SETUP
-#line 777 "surf/surfxml.l"
 FAIL("Unexpected end-tag `%s': `</argument>' expected.",surf_parse_text);
        YY_BREAK
 case 156:
 YY_RULE_SETUP
-#line 778 "surf/surfxml.l"
 FAIL("Unexpected character `%c': `</argument>' expected.",surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(E_surfxml_argument):
-#line 779 "surf/surfxml.l"
 FAIL("Premature EOF: `</argument>' expected.");
        YY_BREAK
 
@@ -3518,11 +3300,9 @@ FAIL("Premature EOF: `</argument>' expected.");
 
 case 157:
 YY_RULE_SETUP
-#line 785 "surf/surfxml.l"
 {SET(PROLOG); yyless(0); CLEANUP; return -1;}
        YY_BREAK
 case YY_STATE_EOF(EPILOG):
-#line 786 "surf/surfxml.l"
 SUCCEED;
        YY_BREAK
 
@@ -3531,119 +3311,91 @@ SUCCEED;
 /* Non-defined standard entities... */
 case 158:
 YY_RULE_SETUP
-#line 793 "surf/surfxml.l"
 BUFFERPUTC('&');
        YY_BREAK
 case 159:
 YY_RULE_SETUP
-#line 794 "surf/surfxml.l"
 BUFFERPUTC('<');
        YY_BREAK
 case 160:
 YY_RULE_SETUP
-#line 795 "surf/surfxml.l"
 BUFFERPUTC('>');
        YY_BREAK
 case 161:
 YY_RULE_SETUP
-#line 796 "surf/surfxml.l"
 BUFFERPUTC('\'');
        YY_BREAK
 case 162:
 YY_RULE_SETUP
-#line 797 "surf/surfxml.l"
 BUFFERPUTC('"');
        YY_BREAK
 /* Character entities. */
 case 163:
 YY_RULE_SETUP
-#line 800 "surf/surfxml.l"
 BUFFERPUTC((unsigned char)atoi(surf_parse_text+2));
        YY_BREAK
 case 164:
 YY_RULE_SETUP
-#line 801 "surf/surfxml.l"
 BUFFERPUTC((unsigned char)strtol(surf_parse_text+3,NULL,16));
        YY_BREAK
 
-
 case 165:
 /* rule 165 can match eol */
-#line 806 "surf/surfxml.l"
 case 166:
 /* rule 166 can match eol */
-#line 807 "surf/surfxml.l"
 case 167:
 /* rule 167 can match eol */
-#line 808 "surf/surfxml.l"
 case 168:
 /* rule 168 can match eol */
 YY_RULE_SETUP
-#line 808 "surf/surfxml.l"
 BUFFERPUTC('\n');
        YY_BREAK
 
-
 case 169:
 YY_RULE_SETUP
-#line 812 "surf/surfxml.l"
 ENTER(CDATA);
        YY_BREAK
 case 170:
 YY_RULE_SETUP
-#line 813 "surf/surfxml.l"
 FAIL("Unexpected `]""]>' in character data.");
        YY_BREAK
 
-
 case 171:
 YY_RULE_SETUP
-#line 817 "surf/surfxml.l"
 BUFFERDONE; LEAVE;
        YY_BREAK
 case YY_STATE_EOF(VALUE1):
-#line 818 "surf/surfxml.l"
 FAIL("EOF in literal (\"'\" expected).");
        YY_BREAK
 
-
 case 172:
 YY_RULE_SETUP
-#line 822 "surf/surfxml.l"
 BUFFERDONE; LEAVE;
        YY_BREAK
 case YY_STATE_EOF(VALUE2):
-#line 823 "surf/surfxml.l"
 FAIL("EOF in literal (`\"' expected).");
        YY_BREAK
 
-
 case 173:
 /* rule 173 can match eol */
 YY_RULE_SETUP
-#line 827 "surf/surfxml.l"
 BUFFERPUTC(surf_parse_text[0]);
        YY_BREAK
 case 174:
 YY_RULE_SETUP
-#line 828 "surf/surfxml.l"
 FAIL("Spurious `%c' in character data.",surf_parse_text[0]);
        YY_BREAK
 
-
 case 175:
 YY_RULE_SETUP
-#line 832 "surf/surfxml.l"
 LEAVE;
        YY_BREAK
 /* "]""]"              BUFFERPUTC(surf_parse_text[0]); BUFFERPUTC(surf_parse_text[1]); */
 case 176:
 YY_RULE_SETUP
-#line 834 "surf/surfxml.l"
 BUFFERPUTC(surf_parse_text[0]);
        YY_BREAK
 case YY_STATE_EOF(CDATA):
-#line 835 "surf/surfxml.l"
 FAIL("EOF in CDATA section.");
        YY_BREAK
 
@@ -3654,16 +3406,13 @@ FAIL("EOF in CDATA section.");
 case 177:
 /* rule 177 can match eol */
 YY_RULE_SETUP
-#line 842 "surf/surfxml.l"
 FAIL("Syntax error on character `%c'.", surf_parse_text[0]);
        YY_BREAK
 
 case 178:
 YY_RULE_SETUP
-#line 845 "surf/surfxml.l"
 ECHO;
        YY_BREAK
-#line 3667 "surf/surfxml.c"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(ROOT_surfxml_platform_description):
 case YY_STATE_EOF(S_surfxml_platform_description_1):
@@ -3907,7 +3656,7 @@ static int yy_get_next_buffer (void)
 
                /* Read in more data. */
                YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
-                       (yy_n_chars), (size_t) num_to_read );
+                       (yy_n_chars), num_to_read );
 
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
                }
@@ -4376,16 +4125,16 @@ YY_BUFFER_STATE surf_parse__scan_buffer  (char * base, yy_size_t  size )
 
 /** Setup the input buffer state to scan a string. The next call to surf_parse_lex() will
  * scan from a @e copy of @a str.
- * @param yystr a NUL-terminated string to scan
+ * @param str a NUL-terminated string to scan
  * 
  * @return the newly allocated buffer state object.
  * @note If you want to scan bytes that may contain NUL values, then use
  *       surf_parse__scan_bytes() instead.
  */
-YY_BUFFER_STATE surf_parse__scan_string (yyconst char * yystr )
+YY_BUFFER_STATE surf_parse__scan_string (yyconst char * yy_str )
 {
     
-       return surf_parse__scan_bytes(yystr,strlen(yystr) );
+       return surf_parse__scan_bytes(yy_str,strlen(yy_str) );
 }
 
 /** Setup the input buffer state to scan the given bytes. The next call to surf_parse_lex() will
@@ -4395,7 +4144,7 @@ YY_BUFFER_STATE surf_parse__scan_string (yyconst char * yystr )
  * 
  * @return the newly allocated buffer state object.
  */
-YY_BUFFER_STATE surf_parse__scan_bytes  (yyconst char * yybytes, int  _yybytes_len )
+YY_BUFFER_STATE surf_parse__scan_bytes  (yyconst char * bytes, int  len )
 {
        YY_BUFFER_STATE b;
        char *buf;
@@ -4403,15 +4152,15 @@ YY_BUFFER_STATE surf_parse__scan_bytes  (yyconst char * yybytes, int  _yybytes_l
        int i;
     
        /* Get memory for full buffer, including space for trailing EOB's. */
-       n = _yybytes_len + 2;
+       n = len + 2;
        buf = (char *) surf_parse_alloc(n  );
        if ( ! buf )
                YY_FATAL_ERROR( "out of dynamic memory in surf_parse__scan_bytes()" );
 
-       for ( i = 0; i < _yybytes_len; ++i )
-               buf[i] = yybytes[i];
+       for ( i = 0; i < len; ++i )
+               buf[i] = bytes[i];
 
-       buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
+       buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
 
        b = surf_parse__scan_buffer(buf,n );
        if ( ! b )
@@ -4565,41 +4314,6 @@ void surf_parse_set_debug (int  bdebug )
         surf_parse__flex_debug = bdebug ;
 }
 
-static int yy_init_globals (void)
-{
-        /* Initialization is the same as for the non-reentrant scanner.
-     * This function is called from surf_parse_lex_destroy(), so don't allocate here.
-     */
-
-    /* We do not touch surf_parse_lineno unless the option is enabled. */
-    surf_parse_lineno =  1;
-    
-    (yy_buffer_stack) = 0;
-    (yy_buffer_stack_top) = 0;
-    (yy_buffer_stack_max) = 0;
-    (yy_c_buf_p) = (char *) 0;
-    (yy_init) = 0;
-    (yy_start) = 0;
-
-    (yy_start_stack_ptr) = 0;
-    (yy_start_stack_depth) = 0;
-    (yy_start_stack) =  NULL;
-
-/* Defined in main.c */
-#ifdef YY_STDINIT
-    surf_parse_in = stdin;
-    surf_parse_out = stdout;
-#else
-    surf_parse_in = (FILE *) 0;
-    surf_parse_out = (FILE *) 0;
-#endif
-
-    /* For future reference: Set errno on error, since we are called by
-     * surf_parse_lex_init()
-     */
-    return 0;
-}
-
 /* surf_parse_lex_destroy is for both reentrant and non-reentrant scanners. */
 int surf_parse_lex_destroy  (void)
 {
@@ -4619,10 +4333,6 @@ int surf_parse_lex_destroy  (void)
         surf_parse_free((yy_start_stack)  );
         (yy_start_stack) = NULL;
 
-    /* Reset the globals. This is important in a non-reentrant scanner so the next time
-     * surf_parse_lex() is called, initialization will occur. */
-    yy_init_globals( );
-
     return 0;
 }
 
@@ -4634,7 +4344,7 @@ int surf_parse_lex_destroy  (void)
 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
 {
        register int i;
-       for ( i = 0; i < n; ++i )
+       for ( i = 0; i < n; ++i )
                s1[i] = s2[i];
 }
 #endif
@@ -4643,7 +4353,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
 static int yy_flex_strlen (yyconst char * s )
 {
        register int n;
-       for ( n = 0; s[n]; ++n )
+       for ( n = 0; s[n]; ++n )
                ;
 
        return n;
@@ -4674,9 +4384,18 @@ void surf_parse_free (void * ptr )
 
 #define YYTABLES_NAME "yytables"
 
-#line 845 "surf/surfxml.l"
-
-
+#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
 
 /* Element context stack lookup. */
 int surfxml_element_context(int i)
@@ -4726,7 +4445,6 @@ static void reset_surfxml_parse_err_msg()
     flexml_err_msg[0] = '\0';
 }
 
-
 static void cleanup(void)
 {
     if (surfxml_statenames) {
@@ -4735,7 +4453,6 @@ static void cleanup(void)
     }
 }
 
-
 static int fail(const char* fmt, ...)
 {
     int chars_left, used;