00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 
00026 
00027 
00028 
00029 
00030 
00031 
00032 
00033 
00034 
00035 
00036 
00037 #define YYBISON 1
00038 
00039 
00040 #define YYSKELETON_NAME "yacc.c"
00041 
00042 
00043 #define YYPURE 0
00044 
00045 
00046 #define YYLSP_NEEDED 0
00047 
00048 
00049 
00050 
00051 #ifndef YYTOKENTYPE
00052 # define YYTOKENTYPE
00053    
00054 
00055    enum yytokentype {
00056      T_UNIMPORTANT = 258,
00057      T_CHARACTER_LITERAL = 259,
00058      T_DOUBLE_LITERAL = 260,
00059      T_IDENTIFIER = 261,
00060      T_INTEGER_LITERAL = 262,
00061      T_STRING_LITERAL = 263,
00062      T_INCLUDE = 264,
00063      T_CLASS = 265,
00064      T_STRUCT = 266,
00065      T_LEFT_CURLY_BRACKET = 267,
00066      T_LEFT_PARANTHESIS = 268,
00067      T_RIGHT_CURLY_BRACKET = 269,
00068      T_RIGHT_PARANTHESIS = 270,
00069      T_COLON = 271,
00070      T_SEMICOLON = 272,
00071      T_PUBLIC = 273,
00072      T_PROTECTED = 274,
00073      T_TRIPE_DOT = 275,
00074      T_PRIVATE = 276,
00075      T_VIRTUAL = 277,
00076      T_CONST = 278,
00077      T_INLINE = 279,
00078      T_FRIEND = 280,
00079      T_RETURN = 281,
00080      T_SIGNAL = 282,
00081      T_SLOT = 283,
00082      T_TYPEDEF = 284,
00083      T_PLUS = 285,
00084      T_MINUS = 286,
00085      T_COMMA = 287,
00086      T_ASTERISK = 288,
00087      T_TILDE = 289,
00088      T_LESS = 290,
00089      T_GREATER = 291,
00090      T_AMPERSAND = 292,
00091      T_EXTERN = 293,
00092      T_EXTERN_C = 294,
00093      T_ACCESS = 295,
00094      T_ENUM = 296,
00095      T_NAMESPACE = 297,
00096      T_USING = 298,
00097      T_UNKNOWN = 299,
00098      T_TRIPLE_DOT = 300,
00099      T_TRUE = 301,
00100      T_FALSE = 302,
00101      T_STATIC = 303,
00102      T_MUTABLE = 304,
00103      T_EQUAL = 305,
00104      T_SCOPE = 306,
00105      T_NULL = 307,
00106      T_INT = 308,
00107      T_ARRAY_OPEN = 309,
00108      T_ARRAY_CLOSE = 310,
00109      T_CHAR = 311,
00110      T_DCOP = 312,
00111      T_DCOP_AREA = 313,
00112      T_DCOP_SIGNAL_AREA = 314,
00113      T_SIGNED = 315,
00114      T_UNSIGNED = 316,
00115      T_LONG = 317,
00116      T_SHORT = 318,
00117      T_FUNOPERATOR = 319,
00118      T_MISCOPERATOR = 320,
00119      T_SHIFT = 321
00120    };
00121 #endif
00122 #define T_UNIMPORTANT 258
00123 #define T_CHARACTER_LITERAL 259
00124 #define T_DOUBLE_LITERAL 260
00125 #define T_IDENTIFIER 261
00126 #define T_INTEGER_LITERAL 262
00127 #define T_STRING_LITERAL 263
00128 #define T_INCLUDE 264
00129 #define T_CLASS 265
00130 #define T_STRUCT 266
00131 #define T_LEFT_CURLY_BRACKET 267
00132 #define T_LEFT_PARANTHESIS 268
00133 #define T_RIGHT_CURLY_BRACKET 269
00134 #define T_RIGHT_PARANTHESIS 270
00135 #define T_COLON 271
00136 #define T_SEMICOLON 272
00137 #define T_PUBLIC 273
00138 #define T_PROTECTED 274
00139 #define T_TRIPE_DOT 275
00140 #define T_PRIVATE 276
00141 #define T_VIRTUAL 277
00142 #define T_CONST 278
00143 #define T_INLINE 279
00144 #define T_FRIEND 280
00145 #define T_RETURN 281
00146 #define T_SIGNAL 282
00147 #define T_SLOT 283
00148 #define T_TYPEDEF 284
00149 #define T_PLUS 285
00150 #define T_MINUS 286
00151 #define T_COMMA 287
00152 #define T_ASTERISK 288
00153 #define T_TILDE 289
00154 #define T_LESS 290
00155 #define T_GREATER 291
00156 #define T_AMPERSAND 292
00157 #define T_EXTERN 293
00158 #define T_EXTERN_C 294
00159 #define T_ACCESS 295
00160 #define T_ENUM 296
00161 #define T_NAMESPACE 297
00162 #define T_USING 298
00163 #define T_UNKNOWN 299
00164 #define T_TRIPLE_DOT 300
00165 #define T_TRUE 301
00166 #define T_FALSE 302
00167 #define T_STATIC 303
00168 #define T_MUTABLE 304
00169 #define T_EQUAL 305
00170 #define T_SCOPE 306
00171 #define T_NULL 307
00172 #define T_INT 308
00173 #define T_ARRAY_OPEN 309
00174 #define T_ARRAY_CLOSE 310
00175 #define T_CHAR 311
00176 #define T_DCOP 312
00177 #define T_DCOP_AREA 313
00178 #define T_DCOP_SIGNAL_AREA 314
00179 #define T_SIGNED 315
00180 #define T_UNSIGNED 316
00181 #define T_LONG 317
00182 #define T_SHORT 318
00183 #define T_FUNOPERATOR 319
00184 #define T_MISCOPERATOR 320
00185 #define T_SHIFT 321
00186 
00187 
00188 
00189 
00190 
00191 #line 1 "yacc.yy"
00192 
00193 
00194 
00195 
00196 
00197 
00198 
00199 
00200 
00201 
00202 
00203 
00204 
00205 
00206 
00207 
00208 
00209 
00210 
00211 
00212 
00213 
00214 
00215 
00216 #include <config.h>
00217 
00218 
00219 
00220 
00221 #ifdef _GNU_SOURCE
00222 #define __USE_GNU 1
00223 #endif
00224 
00225 #include <stdlib.h>
00226 #include <stdio.h>
00227 #include <assert.h>
00228 
00229 #include <qstring.h>
00230 
00231 #define AMP_ENTITY "&"
00232 #define YYERROR_VERBOSE
00233 
00234 extern int yylex();
00235 
00236 
00237 extern int idl_line_no;
00238 extern int function_mode;
00239 
00240 static int dcop_area = 0;
00241 static int dcop_signal_area = 0;
00242 
00243 static QString in_namespace( "" );
00244 
00245 void dcopidlInitFlex( const char *_code );
00246 
00247 void yyerror( const char *s )
00248 {
00249     qDebug( "In line %i : %s", idl_line_no, s );
00250         exit(1);
00251     
00252 }
00253 
00254 
00255 
00256 
00257 #ifndef YYDEBUG
00258 # define YYDEBUG 1
00259 #endif
00260 
00261 
00262 #ifdef YYERROR_VERBOSE
00263 # undef YYERROR_VERBOSE
00264 # define YYERROR_VERBOSE 1
00265 #else
00266 # define YYERROR_VERBOSE 0
00267 #endif
00268 
00269 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
00270 #line 67 "yacc.yy"
00271 typedef union YYSTYPE {
00272   long   _int;
00273   QString        *_str;
00274   unsigned short          _char;
00275   double _float;
00276 } YYSTYPE;
00277 
00278 #line 279 "yacc.cc"
00279 # define yystype YYSTYPE 
00280 # define YYSTYPE_IS_DECLARED 1
00281 # define YYSTYPE_IS_TRIVIAL 1
00282 #endif
00283 
00284 
00285 
00286 
00287 
00288 
00289 
00290 #line 291 "yacc.cc"
00291 
00292 #if ! defined (yyoverflow) || YYERROR_VERBOSE
00293 
00294 # ifndef YYFREE
00295 #  define YYFREE free
00296 # endif
00297 # ifndef YYMALLOC
00298 #  define YYMALLOC malloc
00299 # endif
00300 
00301 
00302 
00303 # ifdef YYSTACK_USE_ALLOCA
00304 #  if YYSTACK_USE_ALLOCA
00305 #   define YYSTACK_ALLOC alloca
00306 #  endif
00307 # else
00308 #  if defined (alloca) || defined (_ALLOCA_H)
00309 #   define YYSTACK_ALLOC alloca
00310 #  else
00311 #   ifdef __GNUC__
00312 #    define YYSTACK_ALLOC __builtin_alloca
00313 #   endif
00314 #  endif
00315 # endif
00316 
00317 # ifdef YYSTACK_ALLOC
00318    
00319 #  define YYSTACK_FREE(Ptr) do { ; } while (0)
00320 # else
00321 #  if defined (__STDC__) || defined (__cplusplus)
00322 #   include <stdlib.h> 
00323 #   define YYSIZE_T size_t
00324 #  endif
00325 #  define YYSTACK_ALLOC YYMALLOC
00326 #  define YYSTACK_FREE YYFREE
00327 # endif
00328 #endif 
00329 
00330 
00331 #if (! defined (yyoverflow) \
00332      && (! defined (__cplusplus) \
00333      || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
00334 
00335 
00336 union yyalloc
00337 {
00338   short int yyss;
00339   YYSTYPE yyvs;
00340   };
00341 
00342 
00343 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
00344 
00345 
00346 
00347 # define YYSTACK_BYTES(N) \
00348      ((N) * (sizeof (short int) + sizeof (YYSTYPE))         \
00349       + YYSTACK_GAP_MAXIMUM)
00350 
00351 
00352 
00353 # ifndef YYCOPY
00354 #  if defined (__GNUC__) && 1 < __GNUC__
00355 #   define YYCOPY(To, From, Count) \
00356       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
00357 #  else
00358 #   define YYCOPY(To, From, Count)      \
00359       do                    \
00360     {                   \
00361       register YYSIZE_T yyi;        \
00362       for (yyi = 0; yyi < (Count); yyi++)   \
00363         (To)[yyi] = (From)[yyi];        \
00364     }                   \
00365       while (0)
00366 #  endif
00367 # endif
00368 
00369 
00370 
00371 
00372 
00373 
00374 # define YYSTACK_RELOCATE(Stack)                    \
00375     do                                  \
00376       {                                 \
00377     YYSIZE_T yynewbytes;                        \
00378     YYCOPY (&yyptr->Stack, Stack, yysize);              \
00379     Stack = &yyptr->Stack;                      \
00380     yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
00381     yyptr += yynewbytes / sizeof (*yyptr);              \
00382       }                                 \
00383     while (0)
00384 
00385 #endif
00386 
00387 #if defined (__STDC__) || defined (__cplusplus)
00388    typedef signed char yysigned_char;
00389 #else
00390    typedef short int yysigned_char;
00391 #endif
00392 
00393 
00394 #define YYFINAL  5
00395 
00396 #define YYLAST   559
00397 
00398 
00399 #define YYNTOKENS  67
00400 
00401 #define YYNNTS  53
00402 
00403 #define YYNRULES  185
00404 
00405 #define YYNSTATES  374
00406 
00407 
00408 #define YYUNDEFTOK  2
00409 #define YYMAXUTOK   321
00410 
00411 #define YYTRANSLATE(YYX)                        \
00412   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
00413 
00414 
00415 static const unsigned char yytranslate[] =
00416 {
00417        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00418        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00419        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00420        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00421        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00422        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00423        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00424        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00425        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00426        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00427        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00428        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00429        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00430        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00431        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00432        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00433        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00434        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00435        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00436        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00437        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00438        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00439        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00440        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00441        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
00442        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
00443        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
00444       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
00445       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
00446       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
00447       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
00448       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
00449       65,    66
00450 };
00451 
00452 #if YYDEBUG
00453 
00454 
00455 static const unsigned short int yyprhs[] =
00456 {
00457        0,     0,     3,     7,     8,    11,    16,    17,    19,    20,
00458       27,    35,    39,    43,    49,    50,    58,    63,    69,    72,
00459       77,    85,    94,    97,    99,   101,   103,   106,   107,   109,
00460      111,   113,   115,   117,   119,   121,   122,   126,   129,   132,
00461      135,   137,   141,   143,   148,   152,   154,   157,   161,   164,
00462      166,   167,   169,   171,   174,   178,   181,   184,   187,   190,
00463      193,   196,   202,   207,   212,   217,   224,   229,   236,   243,
00464      251,   258,   265,   271,   275,   277,   281,   283,   285,   287,
00465      290,   292,   294,   296,   300,   304,   312,   322,   323,   325,
00466      327,   330,   332,   335,   338,   342,   345,   349,   352,   356,
00467      359,   363,   365,   367,   370,   372,   375,   377,   380,   383,
00468      386,   388,   389,   391,   395,   397,   399,   402,   405,   410,
00469      417,   421,   423,   426,   428,   432,   436,   439,   442,   446,
00470      449,   451,   454,   458,   460,   464,   467,   469,   470,   473,
00471      479,   481,   483,   485,   487,   492,   493,   495,   497,   499,
00472      501,   503,   505,   512,   520,   522,   526,   527,   532,   534,
00473      538,   541,   547,   551,   557,   565,   572,   576,   578,   580,
00474      584,   589,   592,   593,   595,   598,   599,   601,   605,   608,
00475      611,   615,   621,   627,   633,   640
00476 };
00477 
00478 
00479 static const yysigned_char yyrhs[] =
00480 {
00481       68,     0,    -1,    69,    71,    68,    -1,    -1,    69,     9,
00482       -1,    39,    12,    68,    14,    -1,    -1,    57,    -1,    -1,
00483       10,    80,    84,    70,    86,    17,    -1,    10,     6,    80,
00484       84,    70,    86,    17,    -1,    10,    80,    17,    -1,    11,
00485       80,    17,    -1,    11,    80,    84,    86,    17,    -1,    -1,
00486       42,     6,    12,    72,    68,    14,    85,    -1,    43,    42,
00487        6,    17,    -1,    43,     6,    51,     6,    17,    -1,    38,
00488       17,    -1,    29,   100,    80,    17,    -1,    29,    11,    12,
00489       73,    14,    80,    17,    -1,    29,    11,    80,    12,    73,
00490       14,    80,    17,    -1,    24,   111,    -1,   111,    -1,   119,
00491       -1,    87,    -1,   119,    73,    -1,    -1,    46,    -1,    47,
00492       -1,    21,    -1,    19,    -1,    18,    -1,    27,    -1,    28,
00493       -1,    -1,    75,    76,    16,    -1,    76,    16,    -1,    58,
00494       16,    -1,    59,    16,    -1,     6,    -1,     6,    51,    80,
00495       -1,    80,    -1,    80,    35,   101,    36,    -1,   105,    18,
00496       81,    -1,    81,    -1,    82,    12,    -1,    82,    32,    83,
00497       -1,    16,    83,    -1,    12,    -1,    -1,    17,    -1,    14,
00498       -1,    92,    86,    -1,    24,   111,    86,    -1,   111,    86,
00499       -1,    79,    86,    -1,    87,    86,    -1,    78,    86,    -1,
00500       77,    86,    -1,   119,    86,    -1,    25,    10,    80,    17,
00501       86,    -1,    25,    80,    17,    86,    -1,    25,   107,    17,
00502       86,    -1,    10,    80,    17,    86,    -1,    10,    80,    84,
00503       86,    17,    86,    -1,    11,    80,    17,    86,    -1,    11,
00504       80,    84,    86,    17,    86,    -1,    43,     6,    51,     6,
00505       17,    86,    -1,    41,     6,    12,    88,    14,     6,    17,
00506       -1,    41,     6,    12,    88,    14,    17,    -1,    41,    12,
00507       88,    14,     6,    17,    -1,    41,    12,    88,    14,    17,
00508       -1,    89,    32,    88,    -1,    89,    -1,     6,    50,    91,
00509       -1,     6,    -1,     4,    -1,     7,    -1,    31,     7,    -1,
00510       52,    -1,    80,    -1,    90,    -1,    90,    30,    90,    -1,
00511       90,    66,    90,    -1,    29,    80,    35,   101,    36,    80,
00512       17,    -1,    29,    80,    35,   101,    36,    51,     6,    80,
00513       17,    -1,    -1,    23,    -1,    60,    -1,    60,    53,    -1,
00514       61,    -1,    61,    53,    -1,    60,    63,    -1,    60,    63,
00515       53,    -1,    60,    62,    -1,    60,    62,    53,    -1,    61,
00516       63,    -1,    61,    63,    53,    -1,    61,    62,    -1,    61,
00517       62,    53,    -1,    53,    -1,    62,    -1,    62,    53,    -1,
00518       63,    -1,    63,    53,    -1,    56,    -1,    60,    56,    -1,
00519       61,    56,    -1,    33,    95,    -1,    33,    -1,    -1,   102,
00520       -1,    96,    32,   102,    -1,    94,    -1,    80,    -1,    11,
00521       80,    -1,    10,    80,    -1,    80,    35,    98,    36,    -1,
00522       80,    35,    98,    36,    51,    80,    -1,    99,    32,    98,
00523       -1,    99,    -1,    97,    95,    -1,    97,    -1,    23,    97,
00524       95,    -1,    23,    97,    37,    -1,    23,    97,    -1,    97,
00525       23,    -1,    97,    23,    37,    -1,    97,    37,    -1,    97,
00526       -1,    97,    95,    -1,   100,    32,   101,    -1,   100,    -1,
00527      100,    80,   103,    -1,   100,   103,    -1,    45,    -1,    -1,
00528       50,   104,    -1,    50,    13,   100,    15,   104,    -1,     8,
00529       -1,    91,    -1,     5,    -1,    74,    -1,    80,    13,    96,
00530       15,    -1,    -1,    22,    -1,    65,    -1,    66,    -1,    36,
00531       -1,    35,    -1,    50,    -1,   100,    80,    13,    96,    15,
00532       93,    -1,   100,    64,   106,    13,    96,    15,    93,    -1,
00533      104,    -1,   104,    32,   108,    -1,    -1,     6,    13,   108,
00534       15,    -1,   109,    -1,   109,    32,   110,    -1,   107,   113,
00535       -1,    22,   107,    50,    52,   113,    -1,    22,   107,   113,
00536       -1,    80,    13,    96,    15,   113,    -1,    80,    13,    96,
00537       15,    16,   110,   113,    -1,   105,    34,    80,    13,    15,
00538      113,    -1,    48,   107,   113,    -1,    12,    -1,    17,    -1,
00539      112,   114,    14,    -1,   112,   114,    14,    17,    -1,   115,
00540      114,    -1,    -1,    17,    -1,    32,   118,    -1,    -1,     6,
00541       -1,     6,    50,   104,    -1,    95,     6,    -1,   117,   116,
00542       -1,   100,   118,    17,    -1,   100,    80,    16,     7,    17,
00543       -1,    48,   100,     6,   103,    17,    -1,    49,   100,     6,
00544      103,    17,    -1,   100,     6,    54,    91,    55,    17,    -1,
00545       48,   100,     6,    54,    91,    55,    17,    -1
00546 };
00547 
00548 
00549 static const unsigned short int yyrline[] =
00550 {
00551        0,   164,   164,   167,   171,   175,   179,   184,   185,   189,
00552      198,   207,   210,   213,   217,   216,   228,   231,   234,   237,
00553      240,   243,   246,   249,   252,   255,   261,   262,   265,   265,
00554      267,   267,   267,   269,   269,   269,   272,   277,   285,   293,
00555      305,   308,   316,   322,   331,   335,   342,   346,   354,   358,
00556      366,   368,   372,   376,   380,   384,   388,   392,   396,   400,
00557      404,   408,   412,   416,   420,   424,   428,   432,   436,   443,
00558      444,   445,   446,   450,   451,   455,   456,   460,   461,   462,
00559      463,   464,   468,   469,   470,   474,   484,   493,   496,   503,
00560      504,   505,   506,   507,   508,   509,   510,   511,   512,   513,
00561      514,   515,   516,   517,   518,   519,   520,   521,   522,   526,
00562      527,   532,   535,   536,   544,   545,   546,   547,   548,   554,
00563      565,   569,   577,   582,   591,   596,   603,   608,   613,   620,
00564      625,   630,   638,   642,   649,   658,   666,   676,   678,   681,
00565      688,   691,   694,   697,   700,   706,   707,   711,   711,   711,
00566      711,   711,   715,   737,   748,   749,   750,   755,   760,   761,
00567      765,   769,   773,   777,   783,   789,   795,   808,   815,   816,
00568      817,   821,   822,   826,   830,   831,   834,   835,   836,   839,
00569      843,   844,   845,   846,   847,   848
00570 };
00571 #endif
00572 
00573 #if YYDEBUG || YYERROR_VERBOSE
00574 
00575 
00576 static const char *const yytname[] =
00577 {
00578   "$end", "error", "$undefined", "T_UNIMPORTANT", "T_CHARACTER_LITERAL",
00579   "T_DOUBLE_LITERAL", "T_IDENTIFIER", "T_INTEGER_LITERAL",
00580   "T_STRING_LITERAL", "T_INCLUDE", "T_CLASS", "T_STRUCT",
00581   "T_LEFT_CURLY_BRACKET", "T_LEFT_PARANTHESIS", "T_RIGHT_CURLY_BRACKET",
00582   "T_RIGHT_PARANTHESIS", "T_COLON", "T_SEMICOLON", "T_PUBLIC",
00583   "T_PROTECTED", "T_TRIPE_DOT", "T_PRIVATE", "T_VIRTUAL", "T_CONST",
00584   "T_INLINE", "T_FRIEND", "T_RETURN", "T_SIGNAL", "T_SLOT", "T_TYPEDEF",
00585   "T_PLUS", "T_MINUS", "T_COMMA", "T_ASTERISK", "T_TILDE", "T_LESS",
00586   "T_GREATER", "T_AMPERSAND", "T_EXTERN", "T_EXTERN_C", "T_ACCESS",
00587   "T_ENUM", "T_NAMESPACE", "T_USING", "T_UNKNOWN", "T_TRIPLE_DOT",
00588   "T_TRUE", "T_FALSE", "T_STATIC", "T_MUTABLE", "T_EQUAL", "T_SCOPE",
00589   "T_NULL", "T_INT", "T_ARRAY_OPEN", "T_ARRAY_CLOSE", "T_CHAR", "T_DCOP",
00590   "T_DCOP_AREA", "T_DCOP_SIGNAL_AREA", "T_SIGNED", "T_UNSIGNED", "T_LONG",
00591   "T_SHORT", "T_FUNOPERATOR", "T_MISCOPERATOR", "T_SHIFT", "$accept",
00592   "main", "includes", "dcoptag", "declaration", "@1", "member_list",
00593   "bool_value", "nodcop_area", "sigslot", "nodcop_area_begin",
00594   "dcop_area_begin", "dcop_signal_area_begin", "Identifier",
00595   "super_class_name", "super_class", "super_classes", "class_header",
00596   "opt_semicolon", "body", "enum", "enum_list", "enum_item", "number",
00597   "int_expression", "typedef", "const_qualifier", "int_type", "asterisks",
00598   "params", "type_name", "templ_type_list", "templ_type", "type",
00599   "type_list", "param", "default", "value", "virtual_qualifier",
00600   "operator", "function_header", "values", "init_item", "init_list",
00601   "function", "function_begin", "function_body", "function_lines",
00602   "function_line", "Identifier_list_rest", "Identifier_list_entry",
00603   "Identifier_list", "member", 0
00604 };
00605 #endif
00606 
00607 # ifdef YYPRINT
00608 
00609 
00610 static const unsigned short int yytoknum[] =
00611 {
00612        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
00613      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
00614      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
00615      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
00616      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
00617      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
00618      315,   316,   317,   318,   319,   320,   321
00619 };
00620 # endif
00621 
00622 
00623 static const unsigned char yyr1[] =
00624 {
00625        0,    67,    68,    68,    69,    69,    69,    70,    70,    71,
00626       71,    71,    71,    71,    72,    71,    71,    71,    71,    71,
00627       71,    71,    71,    71,    71,    71,    73,    73,    74,    74,
00628       75,    75,    75,    76,    76,    76,    77,    77,    78,    79,
00629       80,    80,    81,    81,    82,    82,    83,    83,    84,    84,
00630       85,    85,    86,    86,    86,    86,    86,    86,    86,    86,
00631       86,    86,    86,    86,    86,    86,    86,    86,    86,    87,
00632       87,    87,    87,    88,    88,    89,    89,    90,    90,    90,
00633       90,    90,    91,    91,    91,    92,    92,    93,    93,    94,
00634       94,    94,    94,    94,    94,    94,    94,    94,    94,    94,
00635       94,    94,    94,    94,    94,    94,    94,    94,    94,    95,
00636       95,    96,    96,    96,    97,    97,    97,    97,    97,    97,
00637       98,    98,    99,    99,   100,   100,   100,   100,   100,   100,
00638      100,   100,   101,   101,   102,   102,   102,   103,   103,   103,
00639      104,   104,   104,   104,   104,   105,   105,   106,   106,   106,
00640      106,   106,   107,   107,   108,   108,   108,   109,   110,   110,
00641      111,   111,   111,   111,   111,   111,   111,   112,   113,   113,
00642      113,   114,   114,   115,   116,   116,   117,   117,   117,   118,
00643      119,   119,   119,   119,   119,   119
00644 };
00645 
00646 
00647 static const unsigned char yyr2[] =
00648 {
00649        0,     2,     3,     0,     2,     4,     0,     1,     0,     6,
00650        7,     3,     3,     5,     0,     7,     4,     5,     2,     4,
00651        7,     8,     2,     1,     1,     1,     2,     0,     1,     1,
00652        1,     1,     1,     1,     1,     0,     3,     2,     2,     2,
00653        1,     3,     1,     4,     3,     1,     2,     3,     2,     1,
00654        0,     1,     1,     2,     3,     2,     2,     2,     2,     2,
00655        2,     5,     4,     4,     4,     6,     4,     6,     6,     7,
00656        6,     6,     5,     3,     1,     3,     1,     1,     1,     2,
00657        1,     1,     1,     3,     3,     7,     9,     0,     1,     1,
00658        2,     1,     2,     2,     3,     2,     3,     2,     3,     2,
00659        3,     1,     1,     2,     1,     2,     1,     2,     2,     2,
00660        1,     0,     1,     3,     1,     1,     2,     2,     4,     6,
00661        3,     1,     2,     1,     3,     3,     2,     2,     3,     2,
00662        1,     2,     3,     1,     3,     2,     1,     0,     2,     5,
00663        1,     1,     1,     1,     4,     0,     1,     1,     1,     1,
00664        1,     1,     6,     7,     1,     3,     0,     4,     1,     3,
00665        2,     5,     3,     5,     7,     6,     3,     1,     1,     3,
00666        4,     2,     0,     1,     2,     0,     1,     3,     2,     2,
00667        3,     5,     5,     5,     6,     7
00668 };
00669 
00670 
00671 
00672 
00673 static const unsigned char yydefact[] =
00674 {
00675        6,     0,     0,   145,     6,     1,    40,     4,     0,     0,
00676      146,     0,   145,     0,     0,     0,     0,     0,     0,     0,
00677      101,   106,    89,    91,   102,   104,     6,   115,    25,   114,
00678      130,     0,     0,     0,    23,    24,     0,     0,    40,   117,
00679      116,     0,     0,   115,     0,     0,   126,     0,    22,     0,
00680        0,    18,     0,     0,     0,     0,     0,     0,     0,     0,
00681       90,   107,    95,    93,    92,   108,    99,    97,   103,   105,
00682        2,   111,     0,   127,   110,   129,   131,    40,     0,     0,
00683        0,   175,     0,     0,   167,   168,   172,   160,     5,    41,
00684        0,    49,   145,    11,     8,    12,    35,   117,   116,     0,
00685        0,   162,   125,   124,    27,   116,     0,     0,    76,     0,
00686       74,    14,     0,     0,    40,   166,   137,    96,    94,   100,
00687       98,   136,     0,   137,   112,   123,     0,   121,   128,   109,
00688        0,     0,   150,   149,   151,   147,   148,     0,   111,     0,
00689      178,     0,   179,   180,     0,   173,     0,   172,     8,   146,
00690       42,    45,     0,    48,     0,     7,    35,     0,     0,    52,
00691       32,    31,    30,   145,     0,    33,    34,     0,     0,     0,
00692        0,    35,     0,    35,    35,    35,     0,    35,    35,    35,
00693       35,     0,     0,     0,     0,    27,    27,    19,     0,     0,
00694        0,     0,     6,     0,    16,     0,     0,     0,     0,     0,
00695        0,   137,   135,   122,   118,     0,    77,   142,    78,   140,
00696        0,    28,    29,    80,   143,    81,    82,   141,   177,    81,
00697        0,   111,     0,     0,   176,   174,     0,   169,   171,    35,
00698        0,    46,   145,     0,     0,   117,   116,    35,     0,   115,
00699        0,     0,     0,    38,    39,     0,    37,    59,    58,    56,
00700       13,    57,    53,    55,    60,   161,     0,     0,     0,    26,
00701        0,     0,    75,     0,    72,    73,     0,    17,     0,   138,
00702        0,   182,   183,     0,   163,   113,   134,     0,   120,    79,
00703      111,     0,     0,     0,     0,    87,   181,     0,   170,     0,
00704      133,     0,    47,    44,     9,    35,    35,    35,    35,    54,
00705      117,    35,    35,     0,     0,    36,   137,     0,     0,     0,
00706       70,    71,    50,     0,     0,     0,   158,     0,   119,     0,
00707       83,    84,   184,    87,    88,   152,   165,    10,     0,    43,
00708       64,     0,    66,     0,    35,    62,    63,     0,     0,    20,
00709        0,    69,    51,    15,     0,   185,   156,     0,   164,   144,
00710      153,   132,    35,    35,    61,     0,    35,    21,   139,   154,
00711        0,   159,    65,    67,     0,     0,    68,   156,   157,     0,
00712       85,   155,     0,    86
00713 };
00714 
00715 
00716 static const short int yydefgoto[] =
00717 {
00718       -1,     2,     3,   156,    26,   192,   183,   214,   171,   172,
00719      173,   174,   175,    27,   151,   152,   153,    94,   343,   176,
00720      177,   109,   110,   216,   217,   178,   325,    29,    80,   122,
00721       30,   126,   127,    31,   291,   124,   197,   359,    32,   137,
00722       33,   360,   316,   317,   179,    86,    87,   146,   147,   142,
00723       81,    82,   180
00724 };
00725 
00726 
00727 
00728 #define YYPACT_NINF -191
00729 static const short int yypact[] =
00730 {
00731       28,    78,    99,   342,    80,  -191,    67,  -191,   115,   159,
00732      205,    81,   386,   463,   153,    44,   190,    32,   205,   205,
00733     -191,  -191,   181,   287,   154,   161,    47,    66,  -191,  -191,
00734      138,    19,   185,   143,  -191,  -191,   207,   159,    21,   183,
00735      219,   159,   159,   194,    16,    31,   152,   205,  -191,    91,
00736      159,  -191,   228,   236,   233,   202,   264,    18,   143,   272,
00737     -191,  -191,   231,   232,  -191,  -191,   246,   248,  -191,  -191,
00738     -191,   445,    81,   249,   256,  -191,  -191,    85,   182,    42,
00739      296,   273,   290,   159,  -191,  -191,   291,  -191,  -191,  -191,
00740      196,  -191,   146,  -191,   262,  -191,   269,  -191,  -191,   300,
00741      252,  -191,  -191,  -191,   404,   311,   307,   236,   276,   319,
00742      302,  -191,   329,   320,    60,  -191,   289,  -191,  -191,  -191,
00743     -191,  -191,   114,    39,  -191,   256,   305,   310,  -191,  -191,
00744      507,   101,  -191,  -191,  -191,  -191,  -191,   332,   445,   339,
00745     -191,    62,  -191,  -191,   341,  -191,   343,   291,   262,  -191,
00746      321,  -191,    34,  -191,   337,  -191,   269,   159,   159,  -191,
00747     -191,  -191,  -191,   386,   474,  -191,  -191,   159,   352,   344,
00748      346,   211,   347,   269,   269,   269,   350,   269,   269,   269,
00749      269,   143,   205,   354,    87,   404,   404,  -191,   356,   101,
00750      156,   236,    80,   359,  -191,   120,   101,   360,   364,   247,
00751      445,   289,  -191,  -191,   331,    81,  -191,  -191,  -191,  -191,
00752      379,  -191,  -191,  -191,  -191,   374,    40,  -191,  -191,  -191,
00753      333,   445,   116,   372,   349,  -191,   378,   377,  -191,   269,
00754      205,  -191,   146,   159,   383,   265,   299,   269,   159,    27,
00755      384,   371,   361,  -191,  -191,   391,  -191,  -191,  -191,  -191,
00756     -191,  -191,  -191,  -191,  -191,  -191,   407,   159,   400,  -191,
00757      403,   176,  -191,   401,  -191,  -191,   405,  -191,   205,  -191,
00758      365,  -191,  -191,   415,  -191,  -191,  -191,   159,  -191,  -191,
00759      445,   101,   101,   406,   132,   399,  -191,   143,  -191,   408,
00760      392,   390,  -191,  -191,  -191,   269,   269,   269,   269,  -191,
00761      411,   269,   269,   205,   425,  -191,   144,   418,   159,   419,
00762     -191,  -191,   420,   417,   421,   427,   409,   143,  -191,   148,
00763     -191,  -191,  -191,   399,  -191,  -191,  -191,  -191,   205,  -191,
00764     -191,   426,  -191,   428,   269,  -191,  -191,   414,   437,  -191,
00765      441,  -191,  -191,  -191,   507,  -191,   507,   415,  -191,  -191,
00766     -191,  -191,   269,   269,  -191,    25,   269,  -191,  -191,   412,
00767      444,  -191,  -191,  -191,   455,   446,  -191,   507,  -191,   159,
00768     -191,  -191,   453,  -191
00769 };
00770 
00771 
00772 static const short int yypgoto[] =
00773 {
00774     -191,     9,  -191,   314,  -191,  -191,    -2,  -191,  -191,   301,
00775     -191,  -191,  -191,    -8,   238,  -191,   243,   -33,  -191,    77,
00776      473,   -91,  -191,   -72,  -111,  -191,   155,  -191,    -9,  -123,
00777        1,   274,  -191,    41,  -190,   277,   -97,  -124,   -78,  -191,
00778       22,   121,  -191,   134,     6,  -191,   -41,   335,  -191,  -191,
00779     -191,   348,     5
00780 };
00781 
00782 
00783 
00784 
00785 
00786 #define YYTABLE_NINF -177
00787 static const short int yytable[] =
00788 {
00789       39,    40,    43,    43,   101,    43,   218,    96,    35,    34,
00790       43,    43,    46,    36,   154,   222,   188,   115,    48,   198,
00791      220,    76,     6,    79,   114,    77,   202,     6,    -3,    89,
00792       90,     6,    45,    97,    98,    70,    99,   103,    55,    43,
00793       58,   105,   106,    84,   301,     6,   231,    -3,    85,    99,
00794       52,    44,    74,    44,    50,   138,    53,   148,   139,    57,
00795       59,    -3,    72,    43,    43,   129,   232,     1,   224,    58,
00796      281,   269,    37,   125,    56,   144,   364,  -137,   262,    71,
00797       78,   100,    78,    78,   150,   270,     1,     6,    44,   195,
00798        4,    41,    42,    77,    -3,    74,    43,     6,   284,     5,
00799      265,    72,  -176,   104,   276,   206,   282,     6,   208,   185,
00800      195,    37,   123,   337,   196,   201,   203,  -176,    37,     1,
00801       74,    38,   215,   219,   206,   207,     6,   208,   209,   199,
00802       43,   285,   210,   268,    20,   130,    37,    21,   351,   131,
00803      255,    22,    23,    24,    25,   184,   200,   323,   200,   235,
00804      236,   210,     6,   213,   154,    84,   239,   319,   274,   241,
00805       85,    73,   263,   349,   200,     6,   211,   212,   149,   237,
00806       51,    74,   213,   264,    43,    75,   258,    43,    43,   123,
00807      200,   219,   309,   259,   260,    74,   240,   215,   219,   102,
00808      185,   185,    43,   310,   195,    91,    54,    43,   196,    92,
00809       93,   266,   296,   298,    44,    44,   125,    68,    91,   320,
00810      321,     6,    92,    43,    69,    41,    42,   132,   133,    83,
00811      358,    88,    43,   256,   150,   150,   184,   184,    11,    72,
00812      300,    91,   134,   234,    60,    92,    95,    61,   165,   166,
00813      107,   123,   108,    62,    63,   111,   326,   135,   136,   307,
00814      247,   248,   249,   112,   251,   252,   253,   254,    20,    84,
00815       43,    21,   123,   273,    85,    22,    23,    24,    25,   318,
00816      113,   290,    43,   219,   219,     6,   348,    91,   116,   157,
00817      158,    92,   295,   159,   117,   118,   128,   160,   161,    74,
00818      162,    10,    11,   163,   164,    43,   165,   166,   167,   119,
00819      340,   120,   140,  -145,   181,   141,   289,   143,   145,   313,
00820       15,    91,   168,   138,   299,    92,   297,    18,    19,   155,
00821       43,   123,    20,   186,   187,    21,   189,   169,   170,    22,
00822       23,    24,    25,   190,   191,   193,   215,   194,   215,   195,
00823       64,   204,   205,    65,   290,   221,   223,   365,     6,    66,
00824       67,     7,     8,     9,   226,   233,   230,   227,   242,   215,
00825      243,   372,   244,   246,    10,    11,    12,   250,   257,   290,
00826      261,    13,   330,   331,   332,   333,   267,   271,   335,   336,
00827       14,   272,   277,    15,    16,    17,   279,   280,   283,   286,
00828       18,    19,     6,   287,   288,    20,    41,    42,    21,   130,
00829      294,   302,    22,    23,    24,    25,   303,   305,    10,    11,
00830        6,   354,   304,   306,    41,    42,   139,   308,   311,   312,
00831      314,   315,   324,   322,   328,   327,   329,    11,   334,   362,
00832      363,   338,   344,   366,    47,   339,   341,   342,   345,    20,
00833      346,   347,    21,   352,   367,   353,    22,    23,    24,    25,
00834      355,     6,   182,    19,   356,    41,    42,    20,   357,   368,
00835       21,   369,   229,   370,    22,    23,    24,    25,    11,     6,
00836      373,   293,   245,    41,    49,   292,    28,   275,   350,   278,
00837        6,   361,   228,     0,   238,    42,    11,     0,   371,   225,
00838      121,     0,     0,     0,     0,     0,     0,    11,    20,     0,
00839        0,    21,     0,     0,     0,    22,    23,    24,    25,     0,
00840        0,   206,   207,     6,   208,   209,    20,     0,     0,    21,
00841        0,     0,     0,    22,    23,    24,    25,    20,     0,     0,
00842       21,     0,     0,     0,    22,    23,    24,    25,   210,     0,
00843        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
00844        0,     0,     0,   211,   212,     0,     0,     0,     0,   213
00845 };
00846 
00847 static const short int yycheck[] =
00848 {
00849        8,     9,    10,    11,    45,    13,   130,    40,     3,     3,
00850       18,    19,    11,     4,    92,   138,   107,    58,    12,   116,
00851      131,    30,     6,    31,     6,     6,   123,     6,     0,    37,
00852       38,     6,    10,    41,    42,    26,    44,    46,     6,    47,
00853       18,    49,    50,    12,    17,     6,    12,     0,    17,    57,
00854        6,    10,    33,    12,    13,    13,    12,    90,    16,    18,
00855       19,    14,    35,    71,    72,    74,    32,    39,     6,    47,
00856       30,   195,    51,    72,    42,    83,    51,    17,   189,    13,
00857       64,    50,    64,    64,    92,   196,    39,     6,    47,    50,
00858       12,    10,    11,     6,    14,    33,   104,     6,   221,     0,
00859      191,    35,    17,    12,   201,     4,    66,     6,     7,   104,
00860       50,    51,    71,   303,    54,   123,   125,    32,    51,    39,
00861       33,     6,   130,   131,     4,     5,     6,     7,     8,    15,
00862      138,    15,    31,    13,    53,    50,    51,    56,   328,    54,
00863      181,    60,    61,    62,    63,   104,    32,    15,    32,   157,
00864      158,    31,     6,    52,   232,    12,   164,   280,   199,   167,
00865       17,    23,     6,    15,    32,     6,    46,    47,    22,   163,
00866       17,    33,    52,    17,   182,    37,   184,   185,   186,   138,
00867       32,   189,     6,   185,   186,    33,   164,   195,   196,    37,
00868      185,   186,   200,    17,    50,    12,     6,   205,    54,    16,
00869       17,   192,   235,   236,   163,   164,   205,    53,    12,   281,
00870      282,     6,    16,   221,    53,    10,    11,    35,    36,    34,
00871      344,    14,   230,   182,   232,   233,   185,   186,    23,    35,
00872      238,    12,    50,   156,    53,    16,    17,    56,    27,    28,
00873       12,   200,     6,    62,    63,    12,   287,    65,    66,   257,
00874      173,   174,   175,    51,   177,   178,   179,   180,    53,    12,
00875      268,    56,   221,    16,    17,    60,    61,    62,    63,   277,
00876        6,   230,   280,   281,   282,     6,   317,    12,     6,    10,
00877       11,    16,    17,    14,    53,    53,    37,    18,    19,    33,
00878       21,    22,    23,    24,    25,   303,    27,    28,    29,    53,
00879      308,    53,     6,    34,    52,    32,   229,    17,    17,   268,
00880       41,    12,    43,    13,   237,    16,    17,    48,    49,    57,
00881      328,   280,    53,    12,    17,    56,    50,    58,    59,    60,
00882       61,    62,    63,    14,    32,     6,   344,    17,   346,    50,
00883       53,    36,    32,    56,   303,    13,     7,   355,     6,    62,
00884       63,     9,    10,    11,    13,    18,    35,    14,     6,   367,
00885       16,   369,    16,    16,    22,    23,    24,    17,    14,   328,
00886       14,    29,   295,   296,   297,   298,    17,    17,   301,   302,
00887       38,    17,    51,    41,    42,    43,     7,    13,    55,    17,
00888       48,    49,     6,    15,    17,    53,    10,    11,    56,    50,
00889       17,    17,    60,    61,    62,    63,    35,    16,    22,    23,
00890        6,   334,    51,     6,    10,    11,    16,    14,    17,    14,
00891       55,     6,    23,    17,    32,    17,    36,    23,    17,   352,
00892      353,     6,    15,   356,    48,    17,    17,    17,    17,    53,
00893       13,    32,    56,    17,    32,    17,    60,    61,    62,    63,
00894       36,     6,    48,    49,    17,    10,    11,    53,    17,    15,
00895       56,     6,   148,    17,    60,    61,    62,    63,    23,     6,
00896       17,   233,   171,    10,    11,   232,     3,   200,   323,   205,
00897        6,   347,   147,    -1,    10,    11,    23,    -1,   367,   141,
00898       45,    -1,    -1,    -1,    -1,    -1,    -1,    23,    53,    -1,
00899       -1,    56,    -1,    -1,    -1,    60,    61,    62,    63,    -1,
00900       -1,     4,     5,     6,     7,     8,    53,    -1,    -1,    56,
00901       -1,    -1,    -1,    60,    61,    62,    63,    53,    -1,    -1,
00902       56,    -1,    -1,    -1,    60,    61,    62,    63,    31,    -1,
00903       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
00904       -1,    -1,    -1,    46,    47,    -1,    -1,    -1,    -1,    52
00905 };
00906 
00907 
00908 
00909 static const unsigned char yystos[] =
00910 {
00911        0,    39,    68,    69,    12,     0,     6,     9,    10,    11,
00912       22,    23,    24,    29,    38,    41,    42,    43,    48,    49,
00913       53,    56,    60,    61,    62,    63,    71,    80,    87,    94,
00914       97,   100,   105,   107,   111,   119,    68,    51,     6,    80,
00915       80,    10,    11,    80,   100,   107,    97,    48,   111,    11,
00916      100,    17,     6,    12,     6,     6,    42,   100,   107,   100,
00917       53,    56,    62,    63,    53,    56,    62,    63,    53,    53,
00918       68,    13,    35,    23,    33,    37,    95,     6,    64,    80,
00919       95,   117,   118,    34,    12,    17,   112,   113,    14,    80,
00920       80,    12,    16,    17,    84,    17,    84,    80,    80,    80,
00921       50,   113,    37,    95,    12,    80,    80,    12,     6,    88,
00922       89,    12,    51,     6,     6,   113,     6,    53,    53,    53,
00923       53,    45,    96,   100,   102,    97,    98,    99,    37,    95,
00924       50,    54,    35,    36,    50,    65,    66,   106,    13,    16,
00925        6,    32,   116,    17,    80,    17,   114,   115,    84,    22,
00926       80,    81,    82,    83,   105,    57,    70,    10,    11,    14,
00927       18,    19,    21,    24,    25,    27,    28,    29,    43,    58,
00928       59,    75,    76,    77,    78,    79,    86,    87,    92,   111,
00929      119,    52,    48,    73,   100,   119,    12,    17,    88,    50,
00930       14,    32,    72,     6,    17,    50,    54,   103,   103,    15,
00931       32,    80,   103,    95,    36,    32,     4,     5,     7,     8,
00932       31,    46,    47,    52,    74,    80,    90,    91,   104,    80,
00933       91,    13,    96,     7,     6,   118,    13,    14,   114,    70,
00934       35,    12,    32,    18,    86,    80,    80,   111,    10,    80,
00935      107,    80,     6,    16,    16,    76,    16,    86,    86,    86,
00936       17,    86,    86,    86,    86,   113,   100,    14,    80,    73,
00937       73,    14,    91,     6,    17,    88,    68,    17,    13,   104,
00938       91,    17,    17,    16,   113,   102,   103,    51,    98,     7,
00939       13,    30,    66,    55,    96,    15,    17,    15,    17,    86,
00940      100,   101,    83,    81,    17,    17,    84,    17,    84,    86,
00941       80,    17,    17,    35,    51,    16,     6,    80,    14,     6,
00942       17,    17,    14,   100,    55,     6,   109,   110,    80,    96,
00943       90,    90,    17,    15,    23,    93,   113,    17,    32,    36,
00944       86,    86,    86,    86,    17,    86,    86,   101,     6,    17,
00945       80,    17,    17,    85,    15,    17,    13,    32,   113,    15,
00946       93,   101,    17,    17,    86,    36,    17,    17,   104,   104,
00947      108,   110,    86,    86,    51,    80,    86,    32,    15,     6,
00948       17,   108,    80,    17
00949 };
00950 
00951 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
00952 # define YYSIZE_T __SIZE_TYPE__
00953 #endif
00954 #if ! defined (YYSIZE_T) && defined (size_t)
00955 # define YYSIZE_T size_t
00956 #endif
00957 #if ! defined (YYSIZE_T)
00958 # if defined (__STDC__) || defined (__cplusplus)
00959 #  include <stddef.h> 
00960 #  define YYSIZE_T size_t
00961 # endif
00962 #endif
00963 #if ! defined (YYSIZE_T)
00964 # define YYSIZE_T unsigned int
00965 #endif
00966 
00967 #define yyerrok     (yyerrstatus = 0)
00968 #define yyclearin   (yychar = YYEMPTY)
00969 #define YYEMPTY     (-2)
00970 #define YYEOF       0
00971 
00972 #define YYACCEPT    goto yyacceptlab
00973 #define YYABORT     goto yyabortlab
00974 #define YYERROR     goto yyerrorlab
00975 
00976 
00977 
00978 
00979 
00980 
00981 #define YYFAIL      goto yyerrlab
00982 
00983 #define YYRECOVERING()  (!!yyerrstatus)
00984 
00985 #define YYBACKUP(Token, Value)                  \
00986 do                              \
00987   if (yychar == YYEMPTY && yylen == 1)              \
00988     {                               \
00989       yychar = (Token);                     \
00990       yylval = (Value);                     \
00991       yytoken = YYTRANSLATE (yychar);               \
00992       YYPOPSTACK;                       \
00993       goto yybackup;                        \
00994     }                               \
00995   else                              \
00996     {                               \
00997       yyerror ("syntax error: cannot back up");\
00998       YYERROR;                          \
00999     }                               \
01000 while (0)
01001 
01002 #define YYTERROR    1
01003 #define YYERRCODE   256
01004 
01005 
01006 
01007 
01008 #ifndef YYLLOC_DEFAULT
01009 # define YYLLOC_DEFAULT(Current, Rhs, N)        \
01010    ((Current).first_line   = (Rhs)[1].first_line,   \
01011     (Current).first_column = (Rhs)[1].first_column, \
01012     (Current).last_line    = (Rhs)[N].last_line,    \
01013     (Current).last_column  = (Rhs)[N].last_column)
01014 #endif
01015 
01016 
01017 
01018 #ifdef YYLEX_PARAM
01019 # define YYLEX yylex (YYLEX_PARAM)
01020 #else
01021 # define YYLEX yylex ()
01022 #endif
01023 
01024 
01025 #if YYDEBUG
01026 
01027 # ifndef YYFPRINTF
01028 #  include <stdio.h> 
01029 #  define YYFPRINTF fprintf
01030 # endif
01031 
01032 # define YYDPRINTF(Args)            \
01033 do {                        \
01034   if (yydebug)                  \
01035     YYFPRINTF Args;             \
01036 } while (0)
01037 
01038 # define YYDSYMPRINT(Args)          \
01039 do {                        \
01040   if (yydebug)                  \
01041     yysymprint Args;                \
01042 } while (0)
01043 
01044 # define YYDSYMPRINTF(Title, Token, Value, Location)        \
01045 do {                                \
01046   if (yydebug)                          \
01047     {                               \
01048       YYFPRINTF (stderr, "%s ", Title);             \
01049       yysymprint (stderr,                   \
01050                   Token, Value);    \
01051       YYFPRINTF (stderr, "\n");                 \
01052     }                               \
01053 } while (0)
01054 
01055 
01056 
01057 
01058 
01059 
01060 #if defined (__STDC__) || defined (__cplusplus)
01061 static void
01062 yy_stack_print (short int *bottom, short int *top)
01063 #else
01064 static void
01065 yy_stack_print (bottom, top)
01066     short int *bottom;
01067     short int *top;
01068 #endif
01069 {
01070   YYFPRINTF (stderr, "Stack now");
01071   for (; bottom <= top; ++bottom)
01072     YYFPRINTF (stderr, " %d", *bottom);
01073   YYFPRINTF (stderr, "\n");
01074 }
01075 
01076 # define YY_STACK_PRINT(Bottom, Top)                \
01077 do {                                \
01078   if (yydebug)                          \
01079     yy_stack_print ((Bottom), (Top));               \
01080 } while (0)
01081 
01082 
01083 
01084 
01085 
01086 
01087 #if defined (__STDC__) || defined (__cplusplus)
01088 static void
01089 yy_reduce_print (int yyrule)
01090 #else
01091 static void
01092 yy_reduce_print (yyrule)
01093     int yyrule;
01094 #endif
01095 {
01096   int yyi;
01097   unsigned int yylno = yyrline[yyrule];
01098   YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
01099              yyrule - 1, yylno);
01100   
01101   for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
01102     YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
01103   YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
01104 }
01105 
01106 # define YY_REDUCE_PRINT(Rule)      \
01107 do {                    \
01108   if (yydebug)              \
01109     yy_reduce_print (Rule);     \
01110 } while (0)
01111 
01112 
01113 
01114 int yydebug;
01115 #else 
01116 # define YYDPRINTF(Args)
01117 # define YYDSYMPRINT(Args)
01118 # define YYDSYMPRINTF(Title, Token, Value, Location)
01119 # define YY_STACK_PRINT(Bottom, Top)
01120 # define YY_REDUCE_PRINT(Rule)
01121 #endif 
01122 
01123 
01124 
01125 #ifndef YYINITDEPTH
01126 # define YYINITDEPTH 200
01127 #endif
01128 
01129 
01130 
01131 
01132 
01133 
01134 
01135 
01136 #if defined (YYMAXDEPTH) && YYMAXDEPTH == 0
01137 # undef YYMAXDEPTH
01138 #endif
01139 
01140 #ifndef YYMAXDEPTH
01141 # define YYMAXDEPTH 10000
01142 #endif
01143 
01144 
01145 
01146 #if YYERROR_VERBOSE
01147 
01148 # ifndef yystrlen
01149 #  if defined (__GLIBC__) && defined (_STRING_H)
01150 #   define yystrlen strlen
01151 #  else
01152 
01153 static YYSIZE_T
01154 #   if defined (__STDC__) || defined (__cplusplus)
01155 yystrlen (const char *yystr)
01156 #   else
01157 yystrlen (yystr)
01158      const char *yystr;
01159 #   endif
01160 {
01161   register const char *yys = yystr;
01162 
01163   while (*yys++ != '\0')
01164     continue;
01165 
01166   return yys - yystr - 1;
01167 }
01168 #  endif
01169 # endif
01170 
01171 # ifndef yystpcpy
01172 #  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
01173 #   define yystpcpy stpcpy
01174 #  else
01175 
01176 
01177 static char *
01178 #   if defined (__STDC__) || defined (__cplusplus)
01179 yystpcpy (char *yydest, const char *yysrc)
01180 #   else
01181 yystpcpy (yydest, yysrc)
01182      char *yydest;
01183      const char *yysrc;
01184 #   endif
01185 {
01186   register char *yyd = yydest;
01187   register const char *yys = yysrc;
01188 
01189   while ((*yyd++ = *yys++) != '\0')
01190     continue;
01191 
01192   return yyd - 1;
01193 }
01194 #  endif
01195 # endif
01196 
01197 #endif 
01198 
01199 
01200 
01201 #if YYDEBUG
01202 
01203 
01204 
01205 
01206 #if defined (__STDC__) || defined (__cplusplus)
01207 static void
01208 yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
01209 #else
01210 static void
01211 yysymprint (yyoutput, yytype, yyvaluep)
01212     FILE *yyoutput;
01213     int yytype;
01214     YYSTYPE *yyvaluep;
01215 #endif
01216 {
01217   
01218   (void) yyvaluep;
01219 
01220   if (yytype < YYNTOKENS)
01221     {
01222       YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
01223 # ifdef YYPRINT
01224       YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
01225 # endif
01226     }
01227   else
01228     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
01229 
01230   switch (yytype)
01231     {
01232       default:
01233         break;
01234     }
01235   YYFPRINTF (yyoutput, ")");
01236 }
01237 
01238 #endif 
01239 
01240 
01241 
01242 
01243 #if defined (__STDC__) || defined (__cplusplus)
01244 static void
01245 yydestruct (int yytype, YYSTYPE *yyvaluep)
01246 #else
01247 static void
01248 yydestruct (yytype, yyvaluep)
01249     int yytype;
01250     YYSTYPE *yyvaluep;
01251 #endif
01252 {
01253   
01254   (void) yyvaluep;
01255 
01256   switch (yytype)
01257     {
01258 
01259       default:
01260         break;
01261     }
01262 }
01263 
01264 
01265 
01266 
01267 #ifdef YYPARSE_PARAM
01268 # if defined (__STDC__) || defined (__cplusplus)
01269 int yyparse (void *YYPARSE_PARAM);
01270 # else
01271 int yyparse ();
01272 # endif
01273 #else 
01274 #if defined (__STDC__) || defined (__cplusplus)
01275 int yyparse (void);
01276 #else
01277 int yyparse ();
01278 #endif
01279 #endif 
01280 
01281 
01282 
01283 
01284 int yychar;
01285 
01286 
01287 YYSTYPE yylval;
01288 
01289 
01290 int yynerrs;
01291 
01292 
01293 
01294 
01295 
01296 
01297 
01298 #ifdef YYPARSE_PARAM
01299 # if defined (__STDC__) || defined (__cplusplus)
01300 int yyparse (void *YYPARSE_PARAM)
01301 # else
01302 int yyparse (YYPARSE_PARAM)
01303   void *YYPARSE_PARAM;
01304 # endif
01305 #else 
01306 #if defined (__STDC__) || defined (__cplusplus)
01307 int
01308 yyparse (void)
01309 #else
01310 int
01311 yyparse ()
01312 
01313 #endif
01314 #endif
01315 {
01316   
01317   register int yystate;
01318   register int yyn;
01319   int yyresult;
01320   
01321   int yyerrstatus;
01322   
01323   int yytoken = 0;
01324 
01325   
01326 
01327 
01328 
01329 
01330 
01331 
01332 
01333   
01334   short int yyssa[YYINITDEPTH];
01335   short int *yyss = yyssa;
01336   register short int *yyssp;
01337 
01338   
01339   YYSTYPE yyvsa[YYINITDEPTH];
01340   YYSTYPE *yyvs = yyvsa;
01341   register YYSTYPE *yyvsp;
01342 
01343 
01344 
01345 #define YYPOPSTACK   (yyvsp--, yyssp--)
01346 
01347   YYSIZE_T yystacksize = YYINITDEPTH;
01348 
01349   
01350 
01351   YYSTYPE yyval;
01352 
01353 
01354   
01355 
01356   int yylen;
01357 
01358   YYDPRINTF ((stderr, "Starting parse\n"));
01359 
01360   yystate = 0;
01361   yyerrstatus = 0;
01362   yynerrs = 0;
01363   yychar = YYEMPTY;     
01364 
01365   
01366 
01367 
01368 
01369 
01370   yyssp = yyss;
01371   yyvsp = yyvs;
01372 
01373 
01374   goto yysetstate;
01375 
01376 
01377 
01378 
01379  yynewstate:
01380   
01381 
01382 
01383   yyssp++;
01384 
01385  yysetstate:
01386   *yyssp = yystate;
01387 
01388   if (yyss + yystacksize - 1 <= yyssp)
01389     {
01390       
01391       YYSIZE_T yysize = yyssp - yyss + 1;
01392 
01393 #ifdef yyoverflow
01394       {
01395     
01396 
01397 
01398     YYSTYPE *yyvs1 = yyvs;
01399     short int *yyss1 = yyss;
01400 
01401 
01402     
01403 
01404 
01405 
01406     yyoverflow ("parser stack overflow",
01407             &yyss1, yysize * sizeof (*yyssp),
01408             &yyvs1, yysize * sizeof (*yyvsp),
01409 
01410             &yystacksize);
01411 
01412     yyss = yyss1;
01413     yyvs = yyvs1;
01414       }
01415 #else 
01416 # ifndef YYSTACK_RELOCATE
01417       goto yyoverflowlab;
01418 # else
01419       
01420       if (YYMAXDEPTH <= yystacksize)
01421     goto yyoverflowlab;
01422       yystacksize *= 2;
01423       if (YYMAXDEPTH < yystacksize)
01424     yystacksize = YYMAXDEPTH;
01425 
01426       {
01427     short int *yyss1 = yyss;
01428     union yyalloc *yyptr =
01429       (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
01430     if (! yyptr)
01431       goto yyoverflowlab;
01432     YYSTACK_RELOCATE (yyss);
01433     YYSTACK_RELOCATE (yyvs);
01434 
01435 #  undef YYSTACK_RELOCATE
01436     if (yyss1 != yyssa)
01437       YYSTACK_FREE (yyss1);
01438       }
01439 # endif
01440 #endif 
01441 
01442       yyssp = yyss + yysize - 1;
01443       yyvsp = yyvs + yysize - 1;
01444 
01445 
01446       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
01447           (unsigned long int) yystacksize));
01448 
01449       if (yyss + yystacksize - 1 <= yyssp)
01450     YYABORT;
01451     }
01452 
01453   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
01454 
01455   goto yybackup;
01456 
01457 
01458 
01459 
01460 yybackup:
01461 
01462 
01463 
01464 
01465 
01466   
01467 
01468   yyn = yypact[yystate];
01469   if (yyn == YYPACT_NINF)
01470     goto yydefault;
01471 
01472   
01473 
01474   
01475   if (yychar == YYEMPTY)
01476     {
01477       YYDPRINTF ((stderr, "Reading a token: "));
01478       yychar = YYLEX;
01479     }
01480 
01481   if (yychar <= YYEOF)
01482     {
01483       yychar = yytoken = YYEOF;
01484       YYDPRINTF ((stderr, "Now at end of input.\n"));
01485     }
01486   else
01487     {
01488       yytoken = YYTRANSLATE (yychar);
01489       YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
01490     }
01491 
01492   
01493 
01494   yyn += yytoken;
01495   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
01496     goto yydefault;
01497   yyn = yytable[yyn];
01498   if (yyn <= 0)
01499     {
01500       if (yyn == 0 || yyn == YYTABLE_NINF)
01501     goto yyerrlab;
01502       yyn = -yyn;
01503       goto yyreduce;
01504     }
01505 
01506   if (yyn == YYFINAL)
01507     YYACCEPT;
01508 
01509   
01510   YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
01511 
01512   
01513   if (yychar != YYEOF)
01514     yychar = YYEMPTY;
01515 
01516   *++yyvsp = yylval;
01517 
01518 
01519   
01520 
01521   if (yyerrstatus)
01522     yyerrstatus--;
01523 
01524   yystate = yyn;
01525   goto yynewstate;
01526 
01527 
01528 
01529 
01530 
01531 yydefault:
01532   yyn = yydefact[yystate];
01533   if (yyn == 0)
01534     goto yyerrlab;
01535   goto yyreduce;
01536 
01537 
01538 
01539 
01540 
01541 yyreduce:
01542   
01543   yylen = yyr2[yyn];
01544 
01545   
01546 
01547 
01548 
01549 
01550 
01551 
01552 
01553   yyval = yyvsp[1-yylen];
01554 
01555 
01556   YY_REDUCE_PRINT (yyn);
01557   switch (yyn)
01558     {
01559         case 2:
01560 #line 165 "yacc.yy"
01561     {
01562       ;}
01563     break;
01564 
01565   case 4:
01566 #line 172 "yacc.yy"
01567     {
01568         printf("<INCLUDE>%s</INCLUDE>\n", yyvsp[0]._str->latin1() );
01569       ;}
01570     break;
01571 
01572   case 5:
01573 #line 176 "yacc.yy"
01574     {
01575       ;}
01576     break;
01577 
01578   case 6:
01579 #line 179 "yacc.yy"
01580     {
01581           ;}
01582     break;
01583 
01584   case 7:
01585 #line 184 "yacc.yy"
01586     { yyval._int = 1; ;}
01587     break;
01588 
01589   case 8:
01590 #line 185 "yacc.yy"
01591     { yyval._int = 0; ;}
01592     break;
01593 
01594   case 9:
01595 #line 190 "yacc.yy"
01596     {
01597         if (yyvsp[-2]._int)
01598               printf("<CLASS>\n    <NAME>%s</NAME>\n%s%s</CLASS>\n", ( in_namespace + *yyvsp[-4]._str ).latin1(), yyvsp[-3]._str->latin1(), yyvsp[-1]._str->latin1() );
01599         
01600         dcop_area = 0;
01601         dcop_signal_area = 0;
01602 
01603       ;}
01604     break;
01605 
01606   case 10:
01607 #line 199 "yacc.yy"
01608     {
01609         if (yyvsp[-2]._int)
01610               printf("<CLASS>\n    <NAME>%s</NAME>\n    <LINK_SCOPE>%s</LINK_SCOPE>\n%s%s</CLASS>\n", ( in_namespace + *yyvsp[-4]._str ).latin1(),yyvsp[-5]._str->latin1(),  yyvsp[-3]._str->latin1(), yyvsp[-1]._str->latin1() );
01611         
01612         dcop_area = 0;
01613         dcop_signal_area = 0;
01614 
01615       ;}
01616     break;
01617 
01618   case 11:
01619 #line 208 "yacc.yy"
01620     {
01621       ;}
01622     break;
01623 
01624   case 12:
01625 #line 211 "yacc.yy"
01626     {
01627       ;}
01628     break;
01629 
01630   case 13:
01631 #line 214 "yacc.yy"
01632     {
01633       ;}
01634     break;
01635 
01636   case 14:
01637 #line 217 "yacc.yy"
01638     {
01639                       in_namespace += *yyvsp[-1]._str; in_namespace += "::";
01640                   ;}
01641     break;
01642 
01643   case 15:
01644 #line 221 "yacc.yy"
01645     {
01646                       int pos = in_namespace.findRev( "::", -3 );
01647                       if( pos >= 0 )
01648                           in_namespace = in_namespace.left( pos + 2 );
01649                       else
01650                           in_namespace = "";
01651                   ;}
01652     break;
01653 
01654   case 16:
01655 #line 229 "yacc.yy"
01656     {
01657           ;}
01658     break;
01659 
01660   case 17:
01661 #line 232 "yacc.yy"
01662     {
01663           ;}
01664     break;
01665 
01666   case 18:
01667 #line 235 "yacc.yy"
01668     {
01669       ;}
01670     break;
01671 
01672   case 19:
01673 #line 238 "yacc.yy"
01674     {
01675       ;}
01676     break;
01677 
01678   case 20:
01679 #line 241 "yacc.yy"
01680     {
01681       ;}
01682     break;
01683 
01684   case 21:
01685 #line 244 "yacc.yy"
01686     {
01687       ;}
01688     break;
01689 
01690   case 22:
01691 #line 247 "yacc.yy"
01692     {
01693       ;}
01694     break;
01695 
01696   case 23:
01697 #line 250 "yacc.yy"
01698     {
01699       ;}
01700     break;
01701 
01702   case 24:
01703 #line 253 "yacc.yy"
01704     {
01705       ;}
01706     break;
01707 
01708   case 25:
01709 #line 256 "yacc.yy"
01710     {
01711       ;}
01712     break;
01713 
01714   case 36:
01715 #line 273 "yacc.yy"
01716     {
01717       dcop_area = 0;
01718       dcop_signal_area = 0;
01719     ;}
01720     break;
01721 
01722   case 37:
01723 #line 278 "yacc.yy"
01724     {
01725       dcop_area = 0;
01726       dcop_signal_area = 0;
01727     ;}
01728     break;
01729 
01730   case 38:
01731 #line 286 "yacc.yy"
01732     {
01733       dcop_area = 1;
01734       dcop_signal_area = 0;
01735     ;}
01736     break;
01737 
01738   case 39:
01739 #line 294 "yacc.yy"
01740     {
01741       
01742 
01743 
01744 
01745       dcop_area = 1;
01746       dcop_signal_area = 1;
01747     ;}
01748     break;
01749 
01750   case 40:
01751 #line 305 "yacc.yy"
01752     {
01753       yyval._str = yyvsp[0]._str;
01754     ;}
01755     break;
01756 
01757   case 41:
01758 #line 308 "yacc.yy"
01759     {
01760        QString* tmp = new QString( "%1::%2" );
01761            *tmp = tmp->arg(*(yyvsp[-2]._str)).arg(*(yyvsp[0]._str));
01762            yyval._str = tmp;
01763     ;}
01764     break;
01765 
01766   case 42:
01767 #line 317 "yacc.yy"
01768     {
01769         QString* tmp = new QString( "    <SUPER>%1</SUPER>\n" );
01770         *tmp = tmp->arg( *(yyvsp[0]._str) );
01771         yyval._str = tmp;
01772       ;}
01773     break;
01774 
01775   case 43:
01776 #line 323 "yacc.yy"
01777     {
01778         QString* tmp = new QString( "    <SUPER>%1</SUPER>\n" );
01779         *tmp = tmp->arg( *(yyvsp[-3]._str) + "<" + *(yyvsp[-1]._str) + ">" );
01780         yyval._str = tmp;
01781       ;}
01782     break;
01783 
01784   case 44:
01785 #line 332 "yacc.yy"
01786     {
01787         yyval._str = yyvsp[0]._str;
01788       ;}
01789     break;
01790 
01791   case 45:
01792 #line 336 "yacc.yy"
01793     {
01794         yyval._str = yyvsp[0]._str;
01795       ;}
01796     break;
01797 
01798   case 46:
01799 #line 343 "yacc.yy"
01800     {
01801         yyval._str = yyvsp[-1]._str;
01802       ;}
01803     break;
01804 
01805   case 47:
01806 #line 347 "yacc.yy"
01807     {
01808         
01809         yyval._str = new QString( *(yyvsp[-2]._str) + *(yyvsp[0]._str) );
01810       ;}
01811     break;
01812 
01813   case 48:
01814 #line 355 "yacc.yy"
01815     {
01816         yyval._str = yyvsp[0]._str;
01817       ;}
01818     break;
01819 
01820   case 49:
01821 #line 359 "yacc.yy"
01822     {
01823         yyval._str = new QString( "" );
01824       ;}
01825     break;
01826 
01827   case 50:
01828 #line 366 "yacc.yy"
01829     {
01830           ;}
01831     break;
01832 
01833   case 52:
01834 #line 373 "yacc.yy"
01835     {
01836         yyval._str = new QString( "" );
01837       ;}
01838     break;
01839 
01840   case 53:
01841 #line 377 "yacc.yy"
01842     {
01843         yyval._str = new QString( *(yyvsp[-1]._str) + *(yyvsp[0]._str) );
01844       ;}
01845     break;
01846 
01847   case 54:
01848 #line 381 "yacc.yy"
01849     {
01850         yyval._str = new QString( *(yyvsp[-1]._str) + *(yyvsp[0]._str) );
01851       ;}
01852     break;
01853 
01854   case 55:
01855 #line 385 "yacc.yy"
01856     {
01857         yyval._str = new QString( *(yyvsp[-1]._str) + *(yyvsp[0]._str) );
01858       ;}
01859     break;
01860 
01861   case 56:
01862 #line 389 "yacc.yy"
01863     {
01864         yyval._str = yyvsp[0]._str;
01865       ;}
01866     break;
01867 
01868   case 57:
01869 #line 393 "yacc.yy"
01870     {
01871         yyval._str = yyvsp[0]._str;
01872       ;}
01873     break;
01874 
01875   case 58:
01876 #line 397 "yacc.yy"
01877     {
01878         yyval._str = yyvsp[0]._str;
01879       ;}
01880     break;
01881 
01882   case 59:
01883 #line 401 "yacc.yy"
01884     {   
01885             yyval._str = yyvsp[0]._str;
01886       ;}
01887     break;
01888 
01889   case 60:
01890 #line 405 "yacc.yy"
01891     {
01892             yyval._str = yyvsp[0]._str;
01893       ;}
01894     break;
01895 
01896   case 61:
01897 #line 409 "yacc.yy"
01898     {
01899         yyval._str = yyvsp[0]._str;
01900       ;}
01901     break;
01902 
01903   case 62:
01904 #line 413 "yacc.yy"
01905     {
01906         yyval._str = yyvsp[0]._str;
01907       ;}
01908     break;
01909 
01910   case 63:
01911 #line 417 "yacc.yy"
01912     {
01913         yyval._str = yyvsp[0]._str;
01914       ;}
01915     break;
01916 
01917   case 64:
01918 #line 421 "yacc.yy"
01919     {
01920         yyval._str = yyvsp[0]._str;
01921       ;}
01922     break;
01923 
01924   case 65:
01925 #line 425 "yacc.yy"
01926     {
01927                 yyval._str = yyvsp[0]._str;
01928           ;}
01929     break;
01930 
01931   case 66:
01932 #line 429 "yacc.yy"
01933     {
01934         yyval._str = yyvsp[0]._str;
01935       ;}
01936     break;
01937 
01938   case 67:
01939 #line 433 "yacc.yy"
01940     {
01941                 yyval._str = yyvsp[0]._str;
01942           ;}
01943     break;
01944 
01945   case 68:
01946 #line 437 "yacc.yy"
01947     {
01948                 yyval._str = yyvsp[0]._str;
01949           ;}
01950     break;
01951 
01952   case 75:
01953 #line 455 "yacc.yy"
01954     {;}
01955     break;
01956 
01957   case 76:
01958 #line 456 "yacc.yy"
01959     {;}
01960     break;
01961 
01962   case 77:
01963 #line 460 "yacc.yy"
01964     {;}
01965     break;
01966 
01967   case 78:
01968 #line 461 "yacc.yy"
01969     {;}
01970     break;
01971 
01972   case 79:
01973 #line 462 "yacc.yy"
01974     {;}
01975     break;
01976 
01977   case 80:
01978 #line 463 "yacc.yy"
01979     {;}
01980     break;
01981 
01982   case 81:
01983 #line 464 "yacc.yy"
01984     {;}
01985     break;
01986 
01987   case 82:
01988 #line 468 "yacc.yy"
01989     {;}
01990     break;
01991 
01992   case 83:
01993 #line 469 "yacc.yy"
01994     {;}
01995     break;
01996 
01997   case 84:
01998 #line 470 "yacc.yy"
01999     {;}
02000     break;
02001 
02002   case 85:
02003 #line 475 "yacc.yy"
02004     {
02005         if (dcop_area) {
02006           QString* tmp = new QString("<TYPEDEF name=\"%1\" template=\"%2\"><PARAM %3</TYPEDEF>\n");
02007           *tmp = tmp->arg( *(yyvsp[-1]._str) ).arg( *(yyvsp[-5]._str) ).arg( *(yyvsp[-3]._str) );
02008           yyval._str = tmp;
02009         } else {
02010           yyval._str = new QString("");
02011         }
02012       ;}
02013     break;
02014 
02015   case 86:
02016 #line 485 "yacc.yy"
02017     {
02018         if (dcop_area)
02019           yyerror("scoped template typedefs are not supported in dcop areas!");
02020       ;}
02021     break;
02022 
02023   case 87:
02024 #line 493 "yacc.yy"
02025     {
02026         yyval._int = 0;
02027       ;}
02028     break;
02029 
02030   case 88:
02031 #line 497 "yacc.yy"
02032     {
02033         yyval._int = 1;
02034       ;}
02035     break;
02036 
02037   case 89:
02038 #line 503 "yacc.yy"
02039     { yyval._str = new QString("signed int"); ;}
02040     break;
02041 
02042   case 90:
02043 #line 504 "yacc.yy"
02044     { yyval._str = new QString("signed int"); ;}
02045     break;
02046 
02047   case 91:
02048 #line 505 "yacc.yy"
02049     { yyval._str = new QString("unsigned int"); ;}
02050     break;
02051 
02052   case 92:
02053 #line 506 "yacc.yy"
02054     { yyval._str = new QString("unsigned int"); ;}
02055     break;
02056 
02057   case 93:
02058 #line 507 "yacc.yy"
02059     { yyval._str = new QString("signed short int"); ;}
02060     break;
02061 
02062   case 94:
02063 #line 508 "yacc.yy"
02064     { yyval._str = new QString("signed short int"); ;}
02065     break;
02066 
02067   case 95:
02068 #line 509 "yacc.yy"
02069     { yyval._str = new QString("signed long int"); ;}
02070     break;
02071 
02072   case 96:
02073 #line 510 "yacc.yy"
02074     { yyval._str = new QString("signed long int"); ;}
02075     break;
02076 
02077   case 97:
02078 #line 511 "yacc.yy"
02079     { yyval._str = new QString("unsigned short int"); ;}
02080     break;
02081 
02082   case 98:
02083 #line 512 "yacc.yy"
02084     { yyval._str = new QString("unsigned short int"); ;}
02085     break;
02086 
02087   case 99:
02088 #line 513 "yacc.yy"
02089     { yyval._str = new QString("unsigned long int"); ;}
02090     break;
02091 
02092   case 100:
02093 #line 514 "yacc.yy"
02094     { yyval._str = new QString("unsigned long int"); ;}
02095     break;
02096 
02097   case 101:
02098 #line 515 "yacc.yy"
02099     { yyval._str = new QString("int"); ;}
02100     break;
02101 
02102   case 102:
02103 #line 516 "yacc.yy"
02104     { yyval._str = new QString("long int"); ;}
02105     break;
02106 
02107   case 103:
02108 #line 517 "yacc.yy"
02109     { yyval._str = new QString("long int"); ;}
02110     break;
02111 
02112   case 104:
02113 #line 518 "yacc.yy"
02114     { yyval._str = new QString("short int"); ;}
02115     break;
02116 
02117   case 105:
02118 #line 519 "yacc.yy"
02119     { yyval._str = new QString("short int"); ;}
02120     break;
02121 
02122   case 106:
02123 #line 520 "yacc.yy"
02124     { yyval._str = new QString("char"); ;}
02125     break;
02126 
02127   case 107:
02128 #line 521 "yacc.yy"
02129     { yyval._str = new QString("signed char"); ;}
02130     break;
02131 
02132   case 108:
02133 #line 522 "yacc.yy"
02134     { yyval._str = new QString("unsigned char"); ;}
02135     break;
02136 
02137   case 111:
02138 #line 532 "yacc.yy"
02139     {
02140         yyval._str = new QString( "" );
02141       ;}
02142     break;
02143 
02144   case 113:
02145 #line 537 "yacc.yy"
02146     {
02147         yyval._str = new QString( *(yyvsp[-2]._str) + *(yyvsp[0]._str) );
02148       ;}
02149     break;
02150 
02151   case 115:
02152 #line 545 "yacc.yy"
02153     { yyval._str = yyvsp[0]._str; ;}
02154     break;
02155 
02156   case 116:
02157 #line 546 "yacc.yy"
02158     { yyval._str = yyvsp[0]._str; ;}
02159     break;
02160 
02161   case 117:
02162 #line 547 "yacc.yy"
02163     { yyval._str = yyvsp[0]._str; ;}
02164     break;
02165 
02166   case 118:
02167 #line 548 "yacc.yy"
02168     {
02169         QString *tmp = new QString("%1<%2>");
02170         *tmp = tmp->arg(*(yyvsp[-3]._str));
02171         *tmp = tmp->arg(*(yyvsp[-1]._str));
02172         yyval._str = tmp;
02173      ;}
02174     break;
02175 
02176   case 119:
02177 #line 554 "yacc.yy"
02178     {
02179         QString *tmp = new QString("%1<%2>::%3");
02180         *tmp = tmp->arg(*(yyvsp[-5]._str));
02181         *tmp = tmp->arg(*(yyvsp[-3]._str));
02182         *tmp = tmp->arg(*(yyvsp[0]._str));
02183         yyval._str = tmp;
02184      ;}
02185     break;
02186 
02187   case 120:
02188 #line 566 "yacc.yy"
02189     {
02190         yyval._str = new QString(*(yyvsp[-2]._str) + "," + *(yyvsp[0]._str));
02191       ;}
02192     break;
02193 
02194   case 121:
02195 #line 570 "yacc.yy"
02196     {
02197         yyval._str = yyvsp[0]._str;
02198       ;}
02199     break;
02200 
02201   case 122:
02202 #line 578 "yacc.yy"
02203     {
02204         if (dcop_area)
02205           yyerror("in dcop areas are no pointers allowed");
02206       ;}
02207     break;
02208 
02209   case 123:
02210 #line 583 "yacc.yy"
02211     {
02212         yyval._str = yyvsp[0]._str;
02213       ;}
02214     break;
02215 
02216   case 124:
02217 #line 592 "yacc.yy"
02218     {
02219         if (dcop_area)
02220           yyerror("in dcop areas are no pointers allowed");
02221       ;}
02222     break;
02223 
02224   case 125:
02225 #line 596 "yacc.yy"
02226     {
02227          if (dcop_area) {
02228         QString* tmp = new QString("<TYPE  qleft=\"const\" qright=\"" AMP_ENTITY "\">%1</TYPE>");
02229         *tmp = tmp->arg( *(yyvsp[-1]._str) );
02230         yyval._str = tmp;
02231          }
02232       ;}
02233     break;
02234 
02235   case 126:
02236 #line 603 "yacc.yy"
02237     {
02238         QString* tmp = new QString("<TYPE>%1</TYPE>");
02239         *tmp = tmp->arg( *(yyvsp[0]._str) );
02240         yyval._str = tmp;
02241     ;}
02242     break;
02243 
02244   case 127:
02245 #line 608 "yacc.yy"
02246     {
02247         QString* tmp = new QString("<TYPE>%1</TYPE>");
02248         *tmp = tmp->arg( *(yyvsp[-1]._str) );
02249         yyval._str = tmp;
02250     ;}
02251     break;
02252 
02253   case 128:
02254 #line 613 "yacc.yy"
02255     { 
02256         if (dcop_area) { 
02257            QString* tmp = new QString("<TYPE  qleft=\"const\" qright=\"" AMP_ENTITY "\">%1</TYPE>"); 
02258            *tmp = tmp->arg( *(yyvsp[-2]._str) ); 
02259            yyval._str = tmp; 
02260         } 
02261     ;}
02262     break;
02263 
02264   case 129:
02265 #line 620 "yacc.yy"
02266     {
02267          if (dcop_area)
02268         yyerror("in dcop areas are only const references allowed!");
02269       ;}
02270     break;
02271 
02272   case 130:
02273 #line 625 "yacc.yy"
02274     {
02275         QString* tmp = new QString("<TYPE>%1</TYPE>");
02276         *tmp = tmp->arg( *(yyvsp[0]._str) );
02277         yyval._str = tmp;
02278     ;}
02279     break;
02280 
02281   case 131:
02282 #line 631 "yacc.yy"
02283     {
02284         if (dcop_area)
02285           yyerror("in dcop areas are no pointers allowed");
02286       ;}
02287     break;
02288 
02289   case 132:
02290 #line 639 "yacc.yy"
02291     {
02292         yyval._str = new QString(*(yyvsp[-2]._str) + "," + *(yyvsp[0]._str));
02293       ;}
02294     break;
02295 
02296   case 133:
02297 #line 643 "yacc.yy"
02298     {
02299         yyval._str = yyvsp[0]._str;
02300       ;}
02301     break;
02302 
02303   case 134:
02304 #line 650 "yacc.yy"
02305     {
02306         if (dcop_area) {
02307            QString* tmp = new QString("\n        <ARG>%1<NAME>%2</NAME></ARG>");
02308            *tmp = tmp->arg( *(yyvsp[-2]._str) );
02309            *tmp = tmp->arg( *(yyvsp[-1]._str) );
02310            yyval._str = tmp;        
02311         } else yyval._str = new QString();
02312       ;}
02313     break;
02314 
02315   case 135:
02316 #line 659 "yacc.yy"
02317     {
02318         if (dcop_area) {
02319            QString* tmp = new QString("\n        <ARG>%1</ARG>");
02320            *tmp = tmp->arg( *(yyvsp[-1]._str) );
02321            yyval._str = tmp;        
02322         } else yyval._str = new QString();
02323       ;}
02324     break;
02325 
02326   case 136:
02327 #line 667 "yacc.yy"
02328     {
02329         if (dcop_area)
02330             yyerror("variable arguments not supported in dcop area.");
02331         yyval._str = new QString("");
02332       ;}
02333     break;
02334 
02335   case 137:
02336 #line 676 "yacc.yy"
02337     {
02338       ;}
02339     break;
02340 
02341   case 138:
02342 #line 679 "yacc.yy"
02343     {
02344       ;}
02345     break;
02346 
02347   case 139:
02348 #line 682 "yacc.yy"
02349     {
02350       ;}
02351     break;
02352 
02353   case 140:
02354 #line 689 "yacc.yy"
02355     {
02356           ;}
02357     break;
02358 
02359   case 141:
02360 #line 692 "yacc.yy"
02361     {
02362           ;}
02363     break;
02364 
02365   case 142:
02366 #line 695 "yacc.yy"
02367     {
02368           ;}
02369     break;
02370 
02371   case 143:
02372 #line 698 "yacc.yy"
02373     {
02374           ;}
02375     break;
02376 
02377   case 144:
02378 #line 701 "yacc.yy"
02379     {
02380           ;}
02381     break;
02382 
02383   case 145:
02384 #line 706 "yacc.yy"
02385     { yyval._int = 0; ;}
02386     break;
02387 
02388   case 146:
02389 #line 707 "yacc.yy"
02390     { yyval._int = 1; ;}
02391     break;
02392 
02393   case 152:
02394 #line 716 "yacc.yy"
02395     {
02396          if (dcop_area || dcop_signal_area) {
02397         QString* tmp = 0;
02398                 tmp = new QString(
02399                         "    <%4>\n"
02400                         "        %2\n"
02401                         "        <NAME>%1</NAME>"
02402                         "%3\n"
02403                         "     </%5>\n");
02404         *tmp = tmp->arg( *(yyvsp[-4]._str) );
02405         *tmp = tmp->arg( *(yyvsp[-5]._str) );
02406                 *tmp = tmp->arg( *(yyvsp[-2]._str) );
02407                 
02408                 QString tagname = (dcop_signal_area) ? "SIGNAL" : "FUNC";
02409                 QString attr = (yyvsp[0]._int) ? " qual=\"const\"" : "";
02410                 *tmp = tmp->arg( QString("%1%2").arg(tagname).arg(attr) );
02411                 *tmp = tmp->arg( QString("%1").arg(tagname) );
02412         yyval._str = tmp;
02413          } else
02414             yyval._str = new QString("");
02415       ;}
02416     break;
02417 
02418   case 153:
02419 #line 738 "yacc.yy"
02420     {
02421          if (dcop_area)
02422         yyerror("operators aren't allowed in dcop areas!");
02423          yyval._str = new QString("");
02424       ;}
02425     break;
02426 
02427   case 154:
02428 #line 748 "yacc.yy"
02429     {;}
02430     break;
02431 
02432   case 155:
02433 #line 749 "yacc.yy"
02434     {;}
02435     break;
02436 
02437   case 156:
02438 #line 750 "yacc.yy"
02439     {;}
02440     break;
02441 
02442   case 157:
02443 #line 755 "yacc.yy"
02444     {;}
02445     break;
02446 
02447   case 158:
02448 #line 760 "yacc.yy"
02449     {;}
02450     break;
02451 
02452   case 159:
02453 #line 761 "yacc.yy"
02454     {;}
02455     break;
02456 
02457   case 160:
02458 #line 766 "yacc.yy"
02459     {
02460             yyval._str = yyvsp[-1]._str;
02461       ;}
02462     break;
02463 
02464   case 161:
02465 #line 770 "yacc.yy"
02466     {
02467         yyval._str = yyvsp[-3]._str;
02468       ;}
02469     break;
02470 
02471   case 162:
02472 #line 774 "yacc.yy"
02473     {
02474         yyval._str = yyvsp[-1]._str;
02475       ;}
02476     break;
02477 
02478   case 163:
02479 #line 778 "yacc.yy"
02480     {
02481           
02482           assert(!dcop_area);
02483               yyval._str = new QString("");
02484       ;}
02485     break;
02486 
02487   case 164:
02488 #line 784 "yacc.yy"
02489     {
02490           
02491           assert(!dcop_area);
02492               yyval._str = new QString("");
02493       ;}
02494     break;
02495 
02496   case 165:
02497 #line 790 "yacc.yy"
02498     {
02499           
02500           assert(!dcop_area);
02501               yyval._str = new QString("");
02502       ;}
02503     break;
02504 
02505   case 166:
02506 #line 796 "yacc.yy"
02507     {
02508               if (dcop_area) {
02509                  if (dcop_signal_area)
02510                      yyerror("DCOP signals cannot be static");
02511                  else
02512                      yyerror("DCOP functions cannot be static");
02513               } else {
02514                  yyval._str = new QString();
02515               }  
02516       ;}
02517     break;
02518 
02519   case 167:
02520 #line 809 "yacc.yy"
02521     {
02522         function_mode = 1;
02523     ;}
02524     break;
02525 
02526   case 171:
02527 #line 821 "yacc.yy"
02528     {;}
02529     break;
02530 
02531   case 172:
02532 #line 822 "yacc.yy"
02533     {;}
02534     break;
02535 
02536   case 176:
02537 #line 834 "yacc.yy"
02538     {;}
02539     break;
02540 
02541   case 177:
02542 #line 835 "yacc.yy"
02543     {;}
02544     break;
02545 
02546   case 178:
02547 #line 836 "yacc.yy"
02548     {;}
02549     break;
02550 
02551   case 179:
02552 #line 839 "yacc.yy"
02553     {;}
02554     break;
02555 
02556   case 180:
02557 #line 843 "yacc.yy"
02558     {;}
02559     break;
02560 
02561   case 181:
02562 #line 844 "yacc.yy"
02563     {;}
02564     break;
02565 
02566   case 182:
02567 #line 845 "yacc.yy"
02568     {;}
02569     break;
02570 
02571   case 183:
02572 #line 846 "yacc.yy"
02573     {;}
02574     break;
02575 
02576   case 184:
02577 #line 847 "yacc.yy"
02578     {;}
02579     break;
02580 
02581   case 185:
02582 #line 848 "yacc.yy"
02583     {;}
02584     break;
02585 
02586 
02587     }
02588 
02589 
02590 #line 2591 "yacc.cc"
02591 
02592   yyvsp -= yylen;
02593   yyssp -= yylen;
02594 
02595 
02596   YY_STACK_PRINT (yyss, yyssp);
02597 
02598   *++yyvsp = yyval;
02599 
02600 
02601   
02602 
02603 
02604 
02605   yyn = yyr1[yyn];
02606 
02607   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
02608   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
02609     yystate = yytable[yystate];
02610   else
02611     yystate = yydefgoto[yyn - YYNTOKENS];
02612 
02613   goto yynewstate;
02614 
02615 
02616 
02617 
02618 
02619 yyerrlab:
02620   
02621   if (!yyerrstatus)
02622     {
02623       ++yynerrs;
02624 #if YYERROR_VERBOSE
02625       yyn = yypact[yystate];
02626 
02627       if (YYPACT_NINF < yyn && yyn < YYLAST)
02628     {
02629       YYSIZE_T yysize = 0;
02630       int yytype = YYTRANSLATE (yychar);
02631       const char* yyprefix;
02632       char *yymsg;
02633       int yyx;
02634 
02635       
02636 
02637       int yyxbegin = yyn < 0 ? -yyn : 0;
02638 
02639       
02640       int yychecklim = YYLAST - yyn;
02641       int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
02642       int yycount = 0;
02643 
02644       yyprefix = ", expecting ";
02645       for (yyx = yyxbegin; yyx < yyxend; ++yyx)
02646         if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
02647           {
02648         yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);
02649         yycount += 1;
02650         if (yycount == 5)
02651           {
02652             yysize = 0;
02653             break;
02654           }
02655           }
02656       yysize += (sizeof ("syntax error, unexpected ")
02657              + yystrlen (yytname[yytype]));
02658       yymsg = (char *) YYSTACK_ALLOC (yysize);
02659       if (yymsg != 0)
02660         {
02661           char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
02662           yyp = yystpcpy (yyp, yytname[yytype]);
02663 
02664           if (yycount < 5)
02665         {
02666           yyprefix = ", expecting ";
02667           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
02668             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
02669               {
02670             yyp = yystpcpy (yyp, yyprefix);
02671             yyp = yystpcpy (yyp, yytname[yyx]);
02672             yyprefix = " or ";
02673               }
02674         }
02675           yyerror (yymsg);
02676           YYSTACK_FREE (yymsg);
02677         }
02678       else
02679         yyerror ("syntax error; also virtual memory exhausted");
02680     }
02681       else
02682 #endif 
02683     yyerror ("syntax error");
02684     }
02685 
02686 
02687 
02688   if (yyerrstatus == 3)
02689     {
02690       
02691 
02692 
02693       if (yychar <= YYEOF)
02694         {
02695           
02696 
02697       if (yychar == YYEOF)
02698          for (;;)
02699            {
02700          YYPOPSTACK;
02701          if (yyssp == yyss)
02702            YYABORT;
02703          YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
02704          yydestruct (yystos[*yyssp], yyvsp);
02705            }
02706         }
02707       else
02708     {
02709       YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);
02710       yydestruct (yytoken, &yylval);
02711       yychar = YYEMPTY;
02712 
02713     }
02714     }
02715 
02716   
02717 
02718   goto yyerrlab1;
02719 
02720 
02721 
02722 
02723 
02724 yyerrorlab:
02725 
02726 #ifdef __GNUC__
02727   
02728 
02729   if (0)
02730      goto yyerrorlab;
02731 #endif
02732 
02733   yyvsp -= yylen;
02734   yyssp -= yylen;
02735   yystate = *yyssp;
02736   goto yyerrlab1;
02737 
02738 
02739 
02740 
02741 
02742 yyerrlab1:
02743   yyerrstatus = 3;  
02744 
02745   for (;;)
02746     {
02747       yyn = yypact[yystate];
02748       if (yyn != YYPACT_NINF)
02749     {
02750       yyn += YYTERROR;
02751       if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
02752         {
02753           yyn = yytable[yyn];
02754           if (0 < yyn)
02755         break;
02756         }
02757     }
02758 
02759       
02760       if (yyssp == yyss)
02761     YYABORT;
02762 
02763       YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
02764       yydestruct (yystos[yystate], yyvsp);
02765       YYPOPSTACK;
02766       yystate = *yyssp;
02767       YY_STACK_PRINT (yyss, yyssp);
02768     }
02769 
02770   if (yyn == YYFINAL)
02771     YYACCEPT;
02772 
02773   YYDPRINTF ((stderr, "Shifting error token, "));
02774 
02775   *++yyvsp = yylval;
02776 
02777 
02778   yystate = yyn;
02779   goto yynewstate;
02780 
02781 
02782 
02783 
02784 
02785 yyacceptlab:
02786   yyresult = 0;
02787   goto yyreturn;
02788 
02789 
02790 
02791 
02792 yyabortlab:
02793   yyresult = 1;
02794   goto yyreturn;
02795 
02796 #ifndef yyoverflow
02797 
02798 
02799 
02800 yyoverflowlab:
02801   yyerror ("parser stack overflow");
02802   yyresult = 2;
02803   
02804 #endif
02805 
02806 yyreturn:
02807 #ifndef yyoverflow
02808   if (yyss != yyssa)
02809     YYSTACK_FREE (yyss);
02810 #endif
02811   return yyresult;
02812 }
02813 
02814 
02815 #line 851 "yacc.yy"
02816 
02817 
02818 void dcopidlParse( const char *_code )
02819 {
02820     dcopidlInitFlex( _code );
02821     yyparse();
02822 }
02823 
02824