]> OCCT Git - occt-wok.git/commitdiff
Initial revision
authorcas <cas@opencascade.com>
Tue, 19 Dec 2000 18:18:43 +0000 (18:18 +0000)
committercas <cas@opencascade.com>
Tue, 19 Dec 2000 18:18:43 +0000 (18:18 +0000)
src/CDLFront/CDL.tab.c [new file with mode: 0755]
src/CDLFront/CDLFront_Replace.tcl [new file with mode: 0755]
src/CDLFront/CDLFront_WOKSteps.edl [new file with mode: 0755]

diff --git a/src/CDLFront/CDL.tab.c b/src/CDLFront/CDL.tab.c
new file mode 100755 (executable)
index 0000000..897a6f9
--- /dev/null
@@ -0,0 +1,2223 @@
+
+/*  A Bison parser, made from /adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc
+ by  GNU Bison version 1.25
+  */
+
+#define YYBISON 1  /* Identify Bison output.  */
+
+#define yyparse CDLparse
+#define yylex CDLlex
+#define yyerror CDLerror
+#define yylval CDLlval
+#define yychar CDLchar
+#define yydebug CDLdebug
+#define yynerrs CDLnerrs
+#define        krc     258
+#define        cpp     259
+#define        fortran 260
+#define        object  261
+#define        library 262
+#define        external        263
+#define        alias   264
+#define        any     265
+#define        asynchronous    266
+#define        as      267
+#define        class   268
+#define        client  269
+#define        component       270
+#define        deferred        271
+#define        schema  272
+#define        end     273
+#define        engine  274
+#define        enumeration     275
+#define        exception       276
+#define        executable      277
+#define        execfile        278
+#define        extends 279
+#define        fields  280
+#define        friends 281
+#define        CDL_from        282
+#define        generic 283
+#define        immutable       284
+#define        imported        285
+#define        in      286
+#define        inherits        287
+#define        instantiates    288
+#define        interface       289
+#define        is      290
+#define        like    291
+#define        me      292
+#define        mutable 293
+#define        myclass 294
+#define        out     295
+#define        package 296
+#define        pointer 297
+#define        private 298
+#define        primitive       299
+#define        protected       300
+#define        raises  301
+#define        redefined       302
+#define        returns 303
+#define        statiC  304
+#define        CDL_to  305
+#define        uses    306
+#define        virtual 307
+#define        IDENTIFIER      308
+#define        JAVAIDENTIFIER  309
+#define        INTEGER 310
+#define        LITERAL 311
+#define        REAL    312
+#define        STRING  313
+#define        INVALID 314
+
+#line 9 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+
+/* all parser must define this variable */
+
+#define yyv CDLv
+
+#define MAX_CHAR     256              /* The limit of a identifier.  */
+#define MAX_STRING   (MAX_CHAR * 10)  /* The limit of a string.      */
+#define MAX_COMMENT  (MAX_CHAR * 300) /* The limit of comment line   */
+#define ENDOFCOMMENT "\n%\n"          /* The marque of end of coment */
+
+#define CDL_CPP      1
+#define CDL_FOR      2
+#define CDL_C        3
+#define CDL_OBJ      4
+#define CDL_LIBRARY  5
+#define CDL_EXTERNAL 6
+
+#include <stdlib.h>
+#include <cdl_rules.h>
+
+extern void CDLerror ( char* );
+extern int  CDLlex   ( void  );
+
+
+#line 100 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+typedef union {
+ char str[MAX_STRING];
+} YYSTYPE;
+#include <stdio.h>
+
+#ifndef __cplusplus
+#ifndef __STDC__
+#define const
+#endif
+#endif
+
+
+
+#define        YYFINAL         714
+#define        YYFLAG          -32768
+#define        YYNTBASE        68
+
+#define YYTRANSLATE(x) ((unsigned)(x) <= 314 ? yytranslate[x] : 320)
+
+static const char yytranslate[] = {     0,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,    54,
+    53,     2,     2,    59,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,    57,    58,     2,
+    60,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+    56,     2,    55,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     1,     2,     3,     4,     5,
+     6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
+    16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
+    26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
+    36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
+    46,    47,    48,    49,    50,    51,    52,    61,    62,    63,
+    64,    65,    66,    67
+};
+
+#if YYDEBUG != 0
+static const short yyprhs[] = {     0,
+     0,     2,     4,     6,     9,    11,    13,    15,    17,    19,
+    21,    23,    25,    27,    28,    38,    40,    42,    44,    46,
+    49,    51,    55,    58,    59,    70,    72,    74,    76,    78,
+    81,    83,    87,    89,    91,    93,    96,   100,   105,   108,
+   111,   112,   118,   124,   127,   130,   133,   135,   138,   139,
+   148,   150,   152,   154,   156,   158,   160,   163,   167,   171,
+   172,   183,   185,   187,   189,   191,   195,   197,   199,   201,
+   203,   205,   208,   212,   213,   222,   224,   226,   228,   230,
+   232,   234,   237,   243,   244,   254,   256,   258,   260,   263,
+   265,   269,   271,   273,   275,   277,   279,   281,   284,   288,
+   292,   293,   299,   305,   313,   316,   321,   324,   329,   332,
+   337,   339,   342,   343,   352,   354,   356,   358,   360,   362,
+   365,   366,   377,   379,   381,   383,   385,   389,   391,   394,
+   396,   400,   404,   406,   408,   410,   412,   414,   417,   421,
+   423,   425,   427,   429,   431,   433,   435,   437,   439,   442,
+   444,   448,   450,   452,   454,   456,   458,   460,   462,   464,
+   468,   470,   474,   476,   478,   480,   482,   486,   488,   490,
+   492,   499,   507,   508,   509,   529,   544,   545,   546,   563,
+   565,   569,   573,   575,   577,   579,   583,   585,   589,   590,
+   595,   599,   602,   610,   612,   615,   617,   620,   622,   626,
+   628,   630,   633,   637,   639,   641,   643,   647,   649,   650,
+   655,   665,   676,   687,   695,   704,   715,   717,   719,   721,
+   724,   726,   730,   732,   734,   736,   739,   742,   744,   746,
+   748,   750,   752,   754,   756,   759,   762,   764,   771,   778,
+   785,   792,   795,   800,   804,   809,   817,   823,   826,   831,
+   835,   840,   848,   854,   856,   859,   861,   865,   871,   873,
+   876,   880,   882,   885,   887,   891,   893,   895,   898,   901,
+   904,   907,   911,   915,   919,   923,   927,   929,   932,   934,
+   936,   938,   940,   942,   944,   947,   949,   952,   954,   958,
+   961,   964,   966,   969,   971,   975,   978,   980,   983,   987,
+   990,   992,   995,   997,  1000,  1008,  1010,  1014,  1016,  1020,
+  1022,  1023,  1027,  1029,  1033,  1035,  1039,  1042,  1043,  1049,
+  1054,  1057,  1060,  1063,  1065,  1067,  1069,  1072,  1074,  1078,
+  1080,  1082,  1085,  1088,  1090,  1094,  1095,  1096,  1097,  1098,
+  1099,  1100,  1101,  1102,  1103,  1104,  1105,  1106,  1107,  1108,
+  1109,  1110,  1111,  1112,  1113,  1114,  1115,  1116,  1117,  1118,
+  1119,  1120,  1121,  1122,  1123,  1124,  1125,  1126,  1127,  1128,
+  1129,  1130,  1131,  1132,  1133,  1134,  1135,  1136,  1137,  1138,
+  1139,  1140,  1141,  1142,  1143,  1144,  1145,  1146,  1147,  1148,
+  1149,  1150,  1151,  1152,  1153,  1154,  1155,  1156,  1157,  1158,
+  1159,  1160,  1161
+};
+
+static const short yyrhs[] = {   252,
+     0,    69,     0,    70,     0,    69,    70,     0,    71,     0,
+    78,     0,    92,     0,    99,     0,   115,     0,   128,     0,
+   108,     0,   151,     0,     1,     0,     0,    41,    74,    72,
+    75,    35,    77,    18,    73,    58,     0,   253,     0,    74,
+     0,    61,     0,   252,     0,    51,    76,     0,    74,     0,
+    76,    59,    74,     0,   147,   195,     0,     0,    34,    81,
+    79,    82,    35,    84,    18,    80,    58,   257,     0,   253,
+     0,    61,     0,    61,     0,   252,     0,    51,    83,     0,
+    74,     0,    83,    59,    74,     0,   252,     0,    85,     0,
+    86,     0,    85,    86,     0,    41,    74,    58,     0,    13,
+   179,    58,   256,     0,    87,    58,     0,   193,    88,     0,
+     0,    27,   246,   179,    89,    90,     0,    27,    41,    61,
+   208,    91,     0,   209,    91,     0,   210,    91,     0,   207,
+    91,     0,   252,     0,    48,   179,     0,     0,    17,    95,
+    93,    35,    96,    18,    94,    58,     0,   253,     0,    95,
+     0,    61,     0,   252,     0,    97,     0,    98,     0,    97,
+    98,     0,    41,    74,    58,     0,    13,   179,    58,     0,
+     0,    19,   102,   100,   103,    35,   105,    18,   101,    58,
+   258,     0,   253,     0,    61,     0,    61,     0,   252,     0,
+    27,   104,    61,     0,   252,     0,    17,     0,   252,     0,
+   106,     0,   107,     0,   106,   107,     0,    34,    61,    58,
+     0,     0,    15,   111,   109,    35,   112,    18,   110,    58,
+     0,   253,     0,    61,     0,    61,     0,   252,     0,   113,
+     0,   114,     0,   113,   114,     0,    34,    61,    27,    61,
+    58,     0,     0,    14,   117,   116,   118,    35,   121,    18,
+   120,    58,     0,    62,     0,    61,     0,   252,     0,    51,
+   119,     0,   117,     0,   119,    59,   117,     0,   252,     0,
+    61,     0,    62,     0,   252,     0,   122,     0,   123,     0,
+   122,   123,     0,    34,    61,    58,     0,   193,   124,    58,
+     0,     0,    27,   246,   179,   125,   126,     0,    27,    41,
+    61,   208,   127,     0,    27,    41,    61,   208,   127,    35,
+    11,     0,   209,   127,     0,   209,   127,    35,    11,     0,
+   210,   127,     0,   210,   127,    35,    11,     0,   207,   127,
+     0,   207,   127,    35,    11,     0,   252,     0,    48,   179,
+     0,     0,    22,    61,    35,   129,   130,    18,   131,    58,
+     0,   252,     0,   132,     0,   252,     0,    61,     0,   133,
+     0,   132,   133,     0,     0,    22,   136,   134,   137,   138,
+    35,   142,    18,   135,    58,     0,   253,     0,   136,     0,
+    61,     0,   252,     0,    27,   104,    95,     0,   252,     0,
+    51,   139,     0,   140,     0,   139,    59,   140,     0,    61,
+    12,   141,     0,     7,     0,     8,     0,   252,     0,   143,
+     0,   144,     0,   143,   144,     0,    61,   145,    58,     0,
+   252,     0,   146,     0,     4,     0,     5,     0,     3,     0,
+     6,     0,   252,     0,   148,     0,   149,     0,   148,   149,
+     0,   150,     0,    43,   312,   150,     0,   154,     0,   181,
+     0,   186,     0,   182,     0,   184,     0,   185,     0,   183,
+     0,   152,     0,    43,   312,   152,     0,   153,     0,    16,
+   313,   153,     0,   158,     0,   161,     0,   162,     0,   155,
+     0,    16,   313,   155,     0,   156,     0,   157,     0,   161,
+     0,    13,   254,   179,   255,    58,   273,     0,    28,    13,
+   254,   178,   255,    58,   274,     0,     0,     0,    28,    13,
+   179,   275,    54,   168,    53,   172,   159,   173,   160,   174,
+   175,    35,   167,    18,   177,    58,   279,     0,    13,   254,
+   179,   255,    33,   280,   179,   281,    54,   178,    53,   282,
+    58,   283,     0,     0,     0,    13,   254,   179,   255,   285,
+   172,   163,   173,   164,   174,    35,   167,    18,   177,    58,
+   286,     0,   166,     0,    43,   312,   166,     0,    45,   315,
+   166,     0,   161,     0,   162,     0,   156,     0,   190,   233,
+   238,     0,   169,     0,   168,    58,   169,     0,     0,    61,
+   170,    12,   171,     0,    10,   319,   276,     0,   179,   276,
+     0,   179,    54,   284,   178,    53,   282,   277,     0,   252,
+     0,    32,   178,     0,   252,     0,    51,   178,     0,   252,
+     0,    46,   178,   287,     0,   252,     0,   176,     0,   165,
+   278,     0,   176,   165,   278,     0,   252,     0,   179,     0,
+   179,     0,   178,    59,   179,     0,    61,     0,     0,    61,
+    27,   180,    74,     0,    21,   254,   179,   255,   269,    32,
+   178,    58,   270,     0,     9,   254,   179,   255,   259,    35,
+   179,   260,    58,   261,     0,    42,   254,   179,   255,   262,
+    50,   179,   263,    58,   264,     0,    30,   254,   179,   255,
+   265,    58,   266,     0,    44,   254,   179,   255,   267,   172,
+    58,   268,     0,    20,   254,   179,   255,   271,    35,   189,
+   187,    58,   272,     0,   252,     0,   188,     0,    18,     0,
+    18,   179,     0,    61,     0,   189,    59,    61,     0,   252,
+     0,   191,     0,   192,     0,   191,   192,     0,   193,   194,
+     0,    61,     0,   199,     0,   200,     0,   201,     0,   252,
+     0,   196,     0,   197,     0,   196,   197,     0,   193,   198,
+     0,   202,     0,   203,   226,   227,   247,    58,   302,     0,
+   205,   225,   227,   228,    58,   302,     0,   206,   225,   227,
+   247,    58,   302,     0,   204,   225,   227,   247,    58,   303,
+     0,   252,   291,     0,    54,   291,   212,    53,     0,   252,
+   294,   305,     0,    54,   294,   212,    53,     0,    54,    37,
+   292,   216,   299,   211,    53,     0,    54,    39,   293,   211,
+    53,     0,   252,   295,     0,    54,   295,   212,    53,     0,
+   252,   298,   305,     0,    54,   298,   212,    53,     0,    54,
+    37,   296,   216,   299,   211,    53,     0,    54,    39,   297,
+   211,    53,     0,   252,     0,    58,   212,     0,   213,     0,
+   212,    58,   213,     0,   251,    57,   214,   219,   304,     0,
+   215,     0,    40,   307,     0,    31,    40,   308,     0,   252,
+     0,    31,   306,     0,   252,     0,    57,   214,   217,     0,
+   252,     0,   218,     0,    38,   309,     0,    10,   310,     0,
+    29,   311,     0,   217,   222,     0,   217,   179,   223,     0,
+   217,   179,   301,     0,   217,   179,   301,     0,   217,   222,
+   301,     0,    36,    37,   318,     0,   252,     0,    60,   224,
+     0,    63,     0,    65,     0,    66,     0,    64,     0,    61,
+     0,   252,     0,    48,   221,     0,   252,     0,    48,   220,
+     0,   252,     0,    46,   178,   300,     0,   252,   316,     0,
+    35,   229,     0,   250,     0,   230,   249,     0,   232,     0,
+    47,   314,   231,     0,   252,   317,     0,   232,     0,    49,
+   316,     0,    16,   313,   317,     0,    52,   317,     0,   252,
+     0,    25,   234,     0,   235,     0,   234,   235,     0,   251,
+    57,   179,   236,   248,    58,   288,     0,   252,     0,    56,
+   237,    55,     0,    63,     0,   237,    59,    63,     0,   252,
+     0,     0,    26,   239,   240,     0,   241,     0,   240,    59,
+   241,     0,   242,     0,    13,   179,   290,     0,   193,   243,
+     0,     0,    27,   246,   179,   244,   245,     0,    27,    41,
+    61,   208,     0,   209,   289,     0,   210,   289,     0,   207,
+   289,     0,   252,     0,    13,     0,   252,     0,    35,   250,
+     0,   252,     0,    35,    45,   315,     0,   252,     0,   250,
+     0,    43,   312,     0,    45,   315,     0,    61,     0,   251,
+    59,    61,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0
+};
+
+#endif
+
+#if YYDEBUG != 0
+static const short yyrline[] = { 0,
+   112,   113,   115,   116,   118,   119,   120,   121,   122,   123,
+   124,   125,   128,   133,   135,   139,   140,   142,   144,   145,
+   147,   148,   150,   156,   158,   163,   164,   166,   168,   169,
+   171,   172,   174,   175,   177,   178,   180,   181,   182,   185,
+   187,   188,   188,   191,   192,   193,   196,   197,   201,   203,
+   206,   207,   209,   211,   212,   214,   215,   217,   218,   223,
+   224,   230,   231,   234,   237,   238,   240,   241,   243,   244,
+   246,   247,   249,   254,   256,   261,   262,   265,   268,   269,
+   271,   272,   274,   280,   282,   287,   288,   291,   292,   295,
+   296,   299,   300,   301,   304,   305,   308,   309,   311,   312,
+   315,   316,   316,   317,   320,   321,   322,   323,   324,   325,
+   328,   329,   333,   335,   337,   338,   341,   342,   345,   346,
+   349,   350,   356,   357,   360,   363,   364,   367,   368,   371,
+   372,   375,   378,   379,   382,   383,   386,   387,   390,   392,
+   393,   396,   397,   398,   399,   405,   406,   408,   409,   411,
+   412,   414,   415,   416,   417,   418,   419,   420,   422,   423,
+   428,   429,   431,   432,   433,   435,   436,   438,   439,   440,
+   443,   446,   449,   452,   454,   461,   468,   470,   472,   478,
+   479,   480,   482,   483,   484,   487,   492,   493,   496,   496,
+   499,   500,   501,   504,   505,   507,   508,   510,   511,   513,
+   514,   516,   517,   519,   520,   522,   523,   525,   526,   526,
+   532,   542,   552,   562,   568,   577,   584,   585,   587,   588,
+   590,   591,   596,   597,   599,   600,   602,   604,   606,   607,
+   608,   610,   611,   613,   614,   616,   618,   621,   628,   635,
+   642,   650,   651,   653,   654,   656,   659,   662,   663,   665,
+   666,   668,   671,   678,   679,   681,   682,   684,   688,   689,
+   690,   692,   693,   695,   696,   698,   699,   701,   702,   703,
+   712,   713,   715,   717,   718,   720,   722,   723,   725,   726,
+   727,   728,   729,   732,   733,   735,   736,   738,   739,   741,
+   742,   744,   745,   747,   748,   750,   751,   753,   754,   755,
+   761,   762,   765,   766,   768,   773,   774,   777,   778,   783,
+   784,   784,   786,   787,   789,   790,   792,   794,   795,   795,
+   799,   800,   801,   803,   804,   810,   811,   813,   814,   816,
+   817,   819,   820,   825,   826,   828,   830,   837,   838,   840,
+   841,   843,   845,   846,   847,   849,   850,   851,   853,   854,
+   856,   857,   859,   860,   862,   863,   865,   866,   868,   869,
+   870,   871,   872,   874,   875,   876,   877,   878,   880,   881,
+   883,   884,   885,   886,   888,   889,   890,   891,   892,   893,
+   894,   895,   896,   897,   898,   899,   900,   902,   904,   905,
+   906,   907,   908,   909,   910,   911,   912,   913,   914,   915,
+   916,   917,   918
+};
+#endif
+
+
+#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
+
+static const char * const yytname[] = {   "$","error","$undefined.","krc","cpp",
+"fortran","object","library","external","alias","any","asynchronous","as","class",
+"client","component","deferred","schema","end","engine","enumeration","exception",
+"executable","execfile","extends","fields","friends","CDL_from","generic","immutable",
+"imported","in","inherits","instantiates","interface","is","like","me","mutable",
+"myclass","out","package","pointer","private","primitive","protected","raises",
+"redefined","returns","statiC","CDL_to","uses","virtual","')'","'('","']'","'['",
+"':'","';'","','","'='","IDENTIFIER","JAVAIDENTIFIER","INTEGER","LITERAL","REAL",
+"STRING","INVALID","__Cdl_Declaration_List","Cdl_Declaration_List","Cdl_Declaration",
+"Package_Declaration","@1","__Package_Name","Package_Name","__Packages_Uses",
+"Package_List","Package_Definition","Interface_Declaration","@2","__Interface_Name",
+"Interface_Name","__Interfaces_Uses","InterfaceUse_List","__Interface_Definitions",
+"Interface_Definitions","Interface_Definition","Interface_Method_Dec","Interface_Method",
+"@3","Interface_Method_Class_Dec","Interface_returns_error","Schema_Declaration",
+"@4","__Schema_Name","Schema_Name","__Schema_Packages","Schema_Packages","Schema_Package",
+"Engine_Declaration","@5","__Engine_Name","Engine_Name","__Engine_Schema","__schema",
+"__Engine_Interfaces","Engine_Interfaces","Engine_Interface","Component_Declaration",
+"@6","__Component_Name","Component_Name","__Component_Interfaces","Component_Interfaces",
+"Component_Interface","Client_Declaration","@7","Client_Name","__Client_Uses",
+"ClientUse_List","__Client_End","__Client_Definitions","Client_Definitions",
+"Client_Definition","Client_Method","@8","Client_Method_Class_Dec","Client_returns_error",
+"Executable_Declaration","@9","__ExecFileDeclaration","__ExecutableName","ExecFile_DeclarationList",
+"ExecFile_Declaration","@10","__ExecFile_Name","ExecFile_Name","__ExecFile_Schema",
+"__ExecFile_Uses","ExecFile_List","ExecFile_Use","ExecFile_UseType","__ExecFile_Components",
+"ExecFile_Components","ExecFile_Component","__ExecFile_ComponentType","ExecFile_ComponentType",
+"__Pack_Declaration_List","Pack_Declaration_List","Pack_Declaration","Pack_Declaration_1",
+"Separated_Declaration","Seper_Class_Declaration","Sep_Class_Declaration_1",
+"Pack_Class_Declaration","Pac_Class_Declaration_1","Inc_NoGeneric_Class","Inc_Generic_Class",
+"Generic_C_Declaration","@11","@12","Generic_C_Instanciation","NoGeneric_C_Declaration",
+"@13","@14","Embeded_C_Declaration","Embeded_C_Declaration_1","Class_Definition",
+"Generic_Type_List","Generic_Type","@15","Type_Constraint","__Inherits_Classes",
+"__Uses_Classes","__Raises_Exception","__Embeded_Class_List","Embeded_Class_List",
+"__Class_Name","Type_List","Type_Name","@16","Exception_Declaration","Alias_Declaration",
+"Pointer_Declaration","Imported_Declaration","Primitive_Declaration","Enumeration_Declaration",
+"__Enumeration_End","Enumeration_End","Enum_Item_List","__Member_Method_List",
+"Member_Method_List","Member_Method","Method_Name","Method_Definition","__Extern_Method_List",
+"Extern_Method_List","Extern_Method","Extern_Met_Definition","Constructor","Instance_Method",
+"Class_Method","Extern_Met","Constructor_Header","Extern_Method_Header","Instance_Method_Header",
+"Class_Method_Header","Friend_Const_Header","Friend_ExtMet_Header","Friend_InstMet_Header",
+"Friend_ClassMet_Header","__S_Parameter_List","Parameter_List","Parameter","Passage_Mode",
+"__In","__Me_Mode","__Acces_Mode","Acces_Mode","Transmeted_Type","Constructed_Type",
+"Returned_Type","Associated_Type","__Initial_Value","Initial_Value","__Returnrd_Type_Dec",
+"__Constructed_Type_Dec","__Errors_Declaration","__Inst_Met_Attr_Dec","Inst_Met_Attr_Dec",
+"Definition_Level","__Redefinition","Redefinition","__Field_Declaration","Field_List",
+"Field","__Field_Dimension","Integer_List","__Friends_Declaration","@17","Friend_List",
+"Friend","Friend_Method_Dec","Friend_Method","@18","Friend_Method_Type_Dec",
+"__Class","__Scoop_Declaration","__Scoop_Pro_Declaration","__Scoop","Scoop",
+"Name_List","Empty","Empty_Str","dollardset_inc_state","dollardrestore_state",
+"dollardInterface_Class","dollardInterface_End","dollardEngine_End","dollardAlias_Begin",
+"dollardAlias_Type","dollardAlias_End","dollardPointer_Begin","dollardPointer_Type",
+"dollardPointer_End","dollardImported_Begin","dollardImported_End","dollardPrim_Begin",
+"dollardPrim_End","dollardExcept_Begin","dollardExcept_End","dollardEnum_Begin",
+"dollardEnum_End","dollardInc_Class_Dec","dollardInc_GenClass_Dec","dollardGenClass_Begin",
+"dollardAdd_GenType","dollardAdd_DynaGenType","dollardAdd_Embeded","dollardGenClass_End",
+"dollardInstClass_Begin","dollardAdd_Gen_Class","dollardAdd_InstType","dollardInstClass_End",
+"dollardDynaType_Begin","dollardStdClass_Begin","dollardStdClass_End","dollardAdd_Raises",
+"dollardAdd_Field","dollardAdd_FriendMet","dollardAdd_Friend_Class","dollardConstruct_Begin",
+"dollardInstMet_Begin","dollardClassMet_Begin","dollardExtMet_Begin","dollardFriend_Construct_Begin",
+"dollardFriend_InstMet_Begin","dollardFriend_ClassMet_Begin","dollardFriend_ExtMet_Begin",
+"dollardAdd_Me","dollardAdd_MetRaises","dollardAdd_Returns","dollardMemberMet_End",
+"dollardExternMet_End","dollardParam_Begin","dollardEnd","dollardSet_In","dollardSet_Out",
+"dollardSet_InOut","dollardSet_Mutable","dollardSet_Mutable_Any","dollardSet_Immutable",
+"dollardSet_Priv","dollardSet_Defe","dollardSet_Redefined","dollardSet_Prot",
+"dollardSet_Static","dollardSet_Virtual","dollardSet_Like_Me","dollardSet_Any", NULL
+};
+#endif
+
+static const short yyr1[] = {     0,
+    68,    68,    69,    69,    70,    70,    70,    70,    70,    70,
+    70,    70,    70,    72,    71,    73,    73,    74,    75,    75,
+    76,    76,    77,    79,    78,    80,    80,    81,    82,    82,
+    83,    83,    84,    84,    85,    85,    86,    86,    86,    87,
+    89,    88,    88,    90,    90,    90,    91,    91,    93,    92,
+    94,    94,    95,    96,    96,    97,    97,    98,    98,   100,
+    99,   101,   101,   102,   103,   103,   104,   104,   105,   105,
+   106,   106,   107,   109,   108,   110,   110,   111,   112,   112,
+   113,   113,   114,   116,   115,   117,   117,   118,   118,   119,
+   119,   120,   120,   120,   121,   121,   122,   122,   123,   123,
+   125,   124,   124,   124,   126,   126,   126,   126,   126,   126,
+   127,   127,   129,   128,   130,   130,   131,   131,   132,   132,
+   134,   133,   135,   135,   136,   137,   137,   138,   138,   139,
+   139,   140,   141,   141,   142,   142,   143,   143,   144,   145,
+   145,   146,   146,   146,   146,   147,   147,   148,   148,   149,
+   149,   150,   150,   150,   150,   150,   150,   150,   151,   151,
+   152,   152,   153,   153,   153,   154,   154,   155,   155,   155,
+   156,   157,   159,   160,   158,   161,   163,   164,   162,   165,
+   165,   165,   166,   166,   166,   167,   168,   168,   170,   169,
+   171,   171,   171,   172,   172,   173,   173,   174,   174,   175,
+   175,   176,   176,   177,   177,   178,   178,   179,   180,   179,
+   181,   182,   183,   184,   185,   186,   187,   187,   188,   188,
+   189,   189,   190,   190,   191,   191,   192,   193,   194,   194,
+   194,   195,   195,   196,   196,   197,   198,   199,   200,   201,
+   202,   203,   203,   204,   204,   205,   206,   207,   207,   208,
+   208,   209,   210,   211,   211,   212,   212,   213,   214,   214,
+   214,   215,   215,   216,   216,   217,   217,   218,   218,   218,
+   219,   219,   220,   221,   221,   222,   223,   223,   224,   224,
+   224,   224,   224,   225,   225,   226,   226,   227,   227,   228,
+   228,   229,   229,   230,   230,   231,   231,   232,   232,   232,
+   233,   233,   234,   234,   235,   236,   236,   237,   237,   238,
+   239,   238,   240,   240,   241,   241,   242,   244,   243,   243,
+   245,   245,   245,   246,   246,   247,   247,   248,   248,   249,
+   249,   250,   250,   251,   251,   252,   253,   254,   255,   256,
+   257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
+   267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
+   277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
+   287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
+   297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
+   307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
+   317,   318,   319
+};
+
+static const short yyr2[] = {     0,
+     1,     1,     1,     2,     1,     1,     1,     1,     1,     1,
+     1,     1,     1,     0,     9,     1,     1,     1,     1,     2,
+     1,     3,     2,     0,    10,     1,     1,     1,     1,     2,
+     1,     3,     1,     1,     1,     2,     3,     4,     2,     2,
+     0,     5,     5,     2,     2,     2,     1,     2,     0,     8,
+     1,     1,     1,     1,     1,     1,     2,     3,     3,     0,
+    10,     1,     1,     1,     1,     3,     1,     1,     1,     1,
+     1,     2,     3,     0,     8,     1,     1,     1,     1,     1,
+     1,     2,     5,     0,     9,     1,     1,     1,     2,     1,
+     3,     1,     1,     1,     1,     1,     1,     2,     3,     3,
+     0,     5,     5,     7,     2,     4,     2,     4,     2,     4,
+     1,     2,     0,     8,     1,     1,     1,     1,     1,     2,
+     0,    10,     1,     1,     1,     1,     3,     1,     2,     1,
+     3,     3,     1,     1,     1,     1,     1,     2,     3,     1,
+     1,     1,     1,     1,     1,     1,     1,     1,     2,     1,
+     3,     1,     1,     1,     1,     1,     1,     1,     1,     3,
+     1,     3,     1,     1,     1,     1,     3,     1,     1,     1,
+     6,     7,     0,     0,    19,    14,     0,     0,    16,     1,
+     3,     3,     1,     1,     1,     3,     1,     3,     0,     4,
+     3,     2,     7,     1,     2,     1,     2,     1,     3,     1,
+     1,     2,     3,     1,     1,     1,     3,     1,     0,     4,
+     9,    10,    10,     7,     8,    10,     1,     1,     1,     2,
+     1,     3,     1,     1,     1,     2,     2,     1,     1,     1,
+     1,     1,     1,     1,     2,     2,     1,     6,     6,     6,
+     6,     2,     4,     3,     4,     7,     5,     2,     4,     3,
+     4,     7,     5,     1,     2,     1,     3,     5,     1,     2,
+     3,     1,     2,     1,     3,     1,     1,     2,     2,     2,
+     2,     3,     3,     3,     3,     3,     1,     2,     1,     1,
+     1,     1,     1,     1,     2,     1,     2,     1,     3,     2,
+     2,     1,     2,     1,     3,     2,     1,     2,     3,     2,
+     1,     2,     1,     2,     7,     1,     3,     1,     3,     1,
+     0,     3,     1,     3,     1,     3,     2,     0,     5,     4,
+     2,     2,     2,     1,     1,     1,     2,     1,     3,     1,
+     1,     2,     2,     1,     3,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0
+};
+
+static const short yydefact[] = {     0,
+    13,   338,     0,     0,   397,     0,     0,     0,     0,     0,
+     0,   396,     0,     3,     5,     6,     7,     8,    11,     9,
+    10,    12,   159,   161,   163,   164,   165,     1,     0,    87,
+    86,    84,    78,    74,     0,    53,    49,    64,    60,     0,
+     0,    28,    24,    18,    14,     0,     4,   208,   339,   336,
+     0,   162,     0,   336,   113,   359,   336,   336,   160,   209,
+   369,     0,     0,    88,   336,   336,   336,     0,    65,   336,
+     0,     0,     0,    29,     0,     0,    19,     0,   364,   336,
+    90,    89,   336,     0,     0,    80,    81,    79,     0,     0,
+     0,    55,    56,    54,    68,     0,    67,   336,     0,     0,
+   116,   119,   115,     0,    31,    30,   336,    21,    20,   336,
+   210,     0,     0,   177,   194,     0,     0,   228,     0,    96,
+    97,     0,    95,     0,   337,    82,     0,     0,   337,    57,
+    66,     0,     0,    70,    71,    69,   125,   121,   336,   120,
+   189,     0,   187,     0,     0,     0,     0,    34,    35,     0,
+     0,    33,     0,   338,   338,   397,   338,   338,     0,   338,
+   338,   396,   338,     0,   336,   147,   148,   150,   152,   166,
+   168,   169,   170,   153,   155,   158,   156,   157,   154,   146,
+   365,   195,   206,   336,    91,     0,   336,    98,   336,     0,
+     0,    77,     0,    76,    59,    58,     0,    52,    51,     0,
+   337,    72,   336,   118,     0,   117,     0,   336,     0,    32,
+     0,     0,   337,    36,    39,   336,    40,    22,     0,     0,
+     0,     0,     0,   338,     0,     0,     0,     0,   337,   336,
+    23,   233,   234,   232,   149,     0,     0,     0,   178,   196,
+    99,    93,    94,     0,    92,   325,     0,     0,   324,   100,
+     0,    75,    50,    73,    63,     0,    62,   336,   336,   126,
+   114,     0,   173,   188,   340,    37,    27,     0,    26,     0,
+     0,   339,   339,   167,   339,   339,     0,   339,   339,   151,
+   339,     0,    17,    16,   378,   236,   237,   336,   378,   235,
+     0,   207,   197,   336,    85,   336,   101,    83,   342,     0,
+     0,     0,   128,   403,   190,   360,   336,    38,   341,   336,
+    41,   343,     0,   355,   353,   339,   349,   346,   351,    15,
+     0,   336,   336,   284,   389,     0,     0,     0,   198,   382,
+   336,   382,   336,    61,   127,     0,   129,   130,   336,   360,
+   368,   192,   174,    25,   336,   336,     0,   357,     0,     0,
+     0,     0,     0,   336,   334,     0,   256,     0,   394,   395,
+   393,     0,   267,   285,   266,     0,   336,   288,   244,   366,
+   371,   336,     0,     0,   103,   111,   389,   379,   102,   336,
+   336,   336,   379,     0,     0,   336,     0,   136,   137,   135,
+   191,     0,   336,     0,    43,    47,    42,   336,   336,   336,
+     0,   171,     0,     0,   358,   350,     0,     0,   245,     0,
+   336,     0,   269,   270,   268,     0,   385,   385,   384,     0,
+     0,   326,     0,   199,     0,   336,   224,   225,   336,   223,
+     0,   112,     0,   250,   380,   381,     0,   109,   105,   107,
+   248,   133,   134,   132,   131,   144,   142,   143,   145,     0,
+   141,   140,   337,   138,     0,   336,    48,    46,    44,    45,
+   344,   221,   336,     0,   172,   214,   347,   352,   257,   390,
+   391,   336,   259,   262,   335,   402,   274,   275,   289,   396,
+   399,   327,   387,   367,   336,     0,   336,   301,   226,   375,
+   227,   229,   230,   231,   336,   336,   336,   375,   251,   104,
+   336,   336,     0,     0,     0,     0,   139,     0,   124,   123,
+   366,   338,   396,   399,   185,   183,   184,   362,   180,     0,
+   201,   200,     0,   219,     0,     0,   218,   217,   354,     0,
+   215,   392,   263,   260,     0,   388,   276,   332,   333,   241,
+   176,     0,   205,   204,   302,   303,     0,   311,   186,   310,
+   376,   377,     0,   336,   336,   286,   336,   336,   242,   336,
+   383,   264,     0,     0,   254,   249,   110,   106,   108,   122,
+   361,     0,     0,     0,   202,   336,   362,   345,   220,   222,
+   356,   211,   348,   261,   336,   271,   258,   370,   304,     0,
+     0,   336,   336,     0,     0,   287,   336,   336,   336,   336,
+   336,   255,   253,   193,   339,   181,   182,     0,   203,   212,
+   216,   213,     0,   272,   277,   179,   336,     0,     0,   312,
+   313,   315,   383,     0,   243,   385,     0,     0,     0,   400,
+     0,   265,     0,   369,   336,   283,   279,   282,   280,   281,
+   278,     0,   336,   306,   374,   336,   317,     0,   336,   247,
+   273,   386,   397,   398,   400,   401,   291,   336,   294,   292,
+   386,   290,   386,   252,     0,   308,     0,     0,     0,   328,
+   316,     0,     0,   314,     0,   238,   401,   336,   298,   300,
+   293,   331,   330,   239,   240,   363,   307,     0,   399,   372,
+   336,   318,   246,   299,   295,   297,   401,   175,   309,   329,
+   305,   320,   336,   296,   373,   373,   373,   319,   323,   321,
+   322,     0,     0,     0
+};
+
+static const short yydefgoto[] = {   712,
+    13,    14,    15,    58,   282,    45,    76,   109,   164,    16,
+    57,   268,    43,    73,   106,   147,   148,   149,   150,   217,
+   346,   397,   395,    17,    53,   197,    37,    91,    92,    93,
+    18,    54,   256,    39,    68,    96,   133,   134,   135,    19,
+    51,   193,    34,    85,    86,    87,    20,    50,    32,    63,
+    82,   244,   119,   120,   121,   190,   333,   379,   375,    21,
+    70,   100,   205,   101,   102,   203,   508,   138,   259,   302,
+   337,   338,   444,   387,   388,   389,   450,   451,   165,   166,
+   167,   168,    22,    23,    24,   169,   170,   171,   172,    25,
+   307,   393,    26,    27,   184,   294,   518,   519,   425,   142,
+   143,   207,   305,   114,   239,   328,   520,   521,   542,   182,
+   183,    78,   174,   175,   176,   177,   178,   179,   526,   527,
+   463,   426,   427,   428,   429,   491,   231,   232,   233,   286,
+   492,   493,   494,   287,   495,   288,   496,   497,   380,   331,
+   381,   382,   564,   356,   357,   472,   473,   561,   362,   363,
+   536,   596,   364,   418,   614,   641,   323,   555,   367,   629,
+   657,   658,   695,   659,   487,   545,   546,   643,   667,   549,
+   591,   620,   621,   622,   647,   703,   708,   248,   421,   669,
+   681,   482,   358,   365,   194,    29,    61,   308,   344,   334,
+   347,   523,   610,   353,   530,   612,   352,   466,   354,   531,
+   350,   582,   349,   611,   402,   465,    71,   342,   604,   575,
+   698,   112,   236,   423,   541,   392,    80,   616,   424,   701,
+   709,   671,   553,   592,   593,   321,   437,   501,   502,   373,
+   601,   479,   477,   676,   540,   587,   369,   533,   534,   584,
+   415,   413,   414,    46,    35,   678,   539,   662,   680,   537,
+   340
+};
+
+static const short yypact[] = {   116,
+-32768,-32768,   174,   -10,-32768,    51,    84,   102,   154,   161,
+   164,-32768,   252,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   167,-32768,
+-32768,-32768,-32768,-32768,    34,-32768,-32768,-32768,-32768,   159,
+   167,-32768,-32768,-32768,-32768,   145,-32768,   163,-32768,   131,
+   180,-32768,   210,   224,-32768,-32768,   219,   250,-32768,-32768,
+   254,   174,   267,-32768,   251,   106,   286,   269,-32768,   283,
+   255,   164,   271,-32768,   164,   273,-32768,   164,-32768,   279,
+-32768,   256,    61,   257,   294,   251,-32768,-32768,   167,   164,
+   295,   106,-32768,-32768,-32768,   258,-32768,   280,   259,   298,
+   283,-32768,-32768,   260,-32768,   263,    28,-32768,   265,   155,
+-32768,   167,   167,-32768,-32768,   174,   264,-32768,   299,    61,
+-32768,   300,-32768,   301,   268,-32768,   272,   274,    51,-32768,
+-32768,   275,   308,   280,-32768,-32768,-32768,-32768,   276,-32768,
+-32768,    46,-32768,   164,   167,   164,   316,    28,-32768,   282,
+   311,-32768,   164,-32768,-32768,-32768,-32768,-32768,   328,-32768,
+-32768,-32768,-32768,   324,   288,   155,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,   284,-32768,   293,-32768,   289,   195,-32768,   107,   297,
+   290,-32768,   302,-32768,-32768,-32768,   303,-32768,-32768,   306,
+   292,-32768,   329,-32768,   312,-32768,   345,   279,   260,-32768,
+   313,   315,   317,-32768,-32768,   128,-32768,-32768,   167,   167,
+   123,   167,   167,-32768,   167,   167,   234,   167,   164,   304,
+-32768,   288,-32768,-32768,-32768,   305,   167,   167,-32768,-32768,
+-32768,-32768,-32768,   318,-32768,-32768,   322,   167,-32768,-32768,
+   319,-32768,-32768,-32768,-32768,   321,-32768,   286,   323,-32768,
+-32768,    27,-32768,-32768,-32768,-32768,-32768,   326,-32768,   327,
+   167,-32768,-32768,-32768,-32768,-32768,   167,-32768,-32768,-32768,
+-32768,   331,-32768,-32768,-32768,-32768,-32768,   337,-32768,-32768,
+   167,-32768,   284,   344,-32768,   338,-32768,-32768,-32768,    51,
+   330,   359,-32768,-32768,-32768,   342,   293,-32768,-32768,   338,
+-32768,-32768,    53,-32768,-32768,   284,-32768,-32768,-32768,-32768,
+   336,    99,   355,-32768,-32768,    -4,   167,   368,-32768,-32768,
+   356,-32768,   351,-32768,-32768,   394,   348,-32768,   349,-32768,
+-32768,-32768,-32768,-32768,   361,   351,   377,-32768,   378,   382,
+   358,   360,   367,   279,-32768,   121,-32768,   147,-32768,-32768,
+-32768,    82,-32768,-32768,-32768,   167,   384,-32768,-32768,-32768,
+   284,   288,   336,   167,   385,-32768,-32768,   205,-32768,   356,
+   356,   356,-32768,   253,   330,   228,   403,   349,-32768,-32768,
+-32768,   167,   344,   167,-32768,-32768,-32768,   361,   361,   361,
+   167,-32768,   362,   167,-32768,-32768,   167,   364,-32768,   336,
+   109,   363,-32768,-32768,-32768,   388,-32768,-32768,   284,   203,
+   369,-32768,   370,-32768,   412,   406,   288,-32768,   379,-32768,
+   133,-32768,   423,-32768,-32768,-32768,   336,   400,   401,   402,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   380,
+-32768,-32768,   259,-32768,   113,    39,-32768,-32768,-32768,-32768,
+-32768,-32768,    43,   231,-32768,-32768,-32768,-32768,-32768,   399,
+-32768,    99,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,   167,   336,   414,-32768,-32768,   236,
+-32768,-32768,-32768,-32768,   393,   337,   337,-32768,-32768,-32768,
+   386,   387,   143,   431,   433,   435,-32768,   389,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   413,
+    39,-32768,   391,   167,   390,   392,-32768,-32768,-32768,   395,
+-32768,-32768,-32768,-32768,    82,-32768,-32768,-32768,-32768,-32768,
+-32768,   396,-32768,-32768,   336,-32768,   220,-32768,-32768,-32768,
+-32768,-32768,   336,    99,   355,-32768,   355,   355,-32768,   109,
+-32768,-32768,   336,   404,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,   167,   439,   439,-32768,   288,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,   398,-32768,-32768,-32768,-32768,   167,
+    33,   386,   387,   149,   167,-32768,   384,   420,   384,    99,
+   387,   407,-32768,-32768,-32768,-32768,-32768,   441,-32768,-32768,
+-32768,-32768,   148,-32768,-32768,-32768,   405,   167,   437,   410,
+-32768,-32768,-32768,   409,-32768,-32768,   408,    29,   415,-32768,
+   416,-32768,   417,    53,   167,-32768,-32768,-32768,-32768,-32768,
+-32768,   397,   436,-32768,-32768,   129,-32768,    33,   387,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,   203,-32768,-32768,
+-32768,-32768,-32768,-32768,   418,-32768,   -11,   427,   419,-32768,
+-32768,   421,   167,-32768,   422,-32768,-32768,    48,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,   425,-32768,-32768,
+   338,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,   351,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,   478,   479,-32768
+};
+
+static const short yypgoto[] = {-32768,
+-32768,   467,-32768,-32768,-32768,   -19,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,   333,-32768,-32768,
+-32768,-32768,  -181,-32768,-32768,-32768,  -108,-32768,-32768,   411,
+-32768,-32768,-32768,-32768,-32768,   225,-32768,-32768,   350,-32768,
+-32768,-32768,-32768,-32768,-32768,   424,-32768,-32768,   -23,-32768,
+-32768,-32768,-32768,-32768,   371,-32768,-32768,-32768,  -141,-32768,
+-32768,-32768,-32768,-32768,   426,-32768,-32768,    36,-32768,-32768,
+-32768,   105,-32768,-32768,-32768,   104,-32768,-32768,-32768,-32768,
+   334,   266,-32768,   448,   464,-32768,   285,  -420,-32768,-32768,
+-32768,-32768,  -106,  -418,-32768,-32768,   -17,  -282,   -71,-32768,
+   307,-32768,-32768,  -177,   200,   115,-32768,-32768,  -126,  -204,
+     1,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,    85,   -80,-32768,-32768,-32768,   281,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  -341,  -304,
+  -337,  -334,  -558,  -358,   108,   -46,-32768,   -77,  -440,-32768,
+-32768,-32768,-32768,   -18,-32768,-32768,  -199,-32768,  -377,-32768,
+-32768,-32768,-32768,  -159,-32768,-32768,   -25,-32768,-32768,-32768,
+-32768,-32768,  -127,-32768,-32768,-32768,-32768,  -214,  -316,-32768,
+-32768,  -553,  -453,     0,  -105,  -147,  -253,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
+-32768,-32768,-32768,-32768,-32768,-32768,-32768,   182,-32768,   -54,
+-32768,-32768,-32768,    13,-32768,-32768,-32768,-32768,-32768,-32768,
+  -407,-32768,    30,-32768,-32768,   237,   146,-32768,-32768,   198,
+   -92,-32768,  -389,  -379,-32768,-32768,   156,-32768,-32768,-32768,
+-32768,-32768,-32768,  -145,  -155,-32768,  -496,  -123,  -571,-32768,
+-32768
+};
+
+
+#define        YYLAST          703
+
+
+static const short yytable[] = {    28,
+   221,   271,   122,   173,   398,   345,   219,   220,   399,   222,
+   223,   400,   225,   226,   431,   228,   227,   574,   312,   313,
+   198,   314,   315,   199,   317,   318,   151,   319,   478,    49,
+   263,   535,   547,   293,   624,   515,   304,   517,    81,   122,
+   145,    56,   633,   687,   653,   618,     2,   688,   370,    64,
+    33,   512,   105,    69,   237,   108,    74,    77,   111,   173,
+   524,     9,   351,   653,    88,    94,    97,   151,   146,   103,
+   128,   480,   316,   481,   660,   654,   277,   655,   503,   115,
+   656,   513,   123,   514,   230,    79,   326,    48,   118,   127,
+   675,   547,   185,   118,   117,   257,   655,   136,   208,   656,
+   515,   525,   517,   209,   682,   694,   152,   269,   359,   180,
+   348,    36,   181,   595,   173,  -336,     1,   416,    89,   246,
+   173,   118,   371,   284,   210,   704,   212,   360,     2,     3,
+     4,     5,     6,   218,     7,   155,   361,     8,   206,   470,
+   246,   246,    48,     9,    38,   211,    90,   247,   471,    10,
+   159,   230,   515,   515,   517,   517,    11,     2,    12,   632,
+     5,   419,    40,   154,   234,   511,    41,   155,   270,   672,
+   156,   237,     9,   409,   157,   158,   408,   597,   410,   598,
+   599,    62,   159,   240,   160,   499,   245,   455,   249,    60,
+   410,   335,   700,    55,   594,   566,   161,   162,   163,   464,
+   410,   625,   260,   411,   602,   412,   410,   115,   636,   283,
+   637,   638,   639,   640,    65,   249,   458,   459,   460,   272,
+   273,    42,   275,   276,    44,   278,   279,    48,   281,   289,
+   446,   447,   448,   449,    30,    31,   651,   292,   438,   439,
+   440,   435,   154,   436,    66,   480,   155,   481,   297,   156,
+    67,    -2,     1,   157,   158,   242,   243,    97,   303,   442,
+   443,   159,   306,   160,     2,     3,     4,     5,     6,    72,
+     7,   311,   551,     8,   552,   161,   590,   163,   412,     9,
+   627,   684,   631,   685,    84,    10,    79,   324,   529,   237,
+   606,   607,    11,   329,    12,   332,   557,   558,   710,   711,
+    75,    83,    95,    98,    99,   107,   240,   110,   104,   332,
+   113,   125,   129,   132,   116,   139,   187,   124,   131,   137,
+   141,   144,   368,   153,   186,   201,   189,   191,   192,   195,
+   376,   196,   383,   213,   538,   200,   204,   216,   390,   215,
+   224,   229,   237,   238,   396,   383,   241,   510,   118,   516,
+   251,   634,   255,   115,   250,   258,   262,   285,   291,   252,
+   253,   705,   417,   254,   572,   706,   422,   573,   707,   261,
+   265,   430,   266,   301,   432,   295,   298,   267,   299,   376,
+   376,   376,   296,   309,   322,   452,   702,   310,   320,   327,
+   336,   330,   329,   339,   457,   341,   355,   396,   396,   396,
+   366,   461,   372,   374,   378,   384,   385,   467,   394,   386,
+   474,   401,   403,   404,   516,   405,   407,   406,   420,   433,
+   453,   468,   462,   475,   476,   488,   483,   484,   498,   485,
+   486,   673,   490,   500,   504,   505,   506,   507,   532,   548,
+   554,   567,   560,   568,   563,   569,   570,   576,   578,   581,
+   580,   512,   583,   588,   628,   522,   603,   613,   635,   666,
+   642,   650,   528,   646,   410,   652,   516,   516,   648,   664,
+   668,   689,   661,   663,   693,   686,   690,   713,   714,    47,
+   214,   691,   300,   202,   544,   543,   550,   699,   509,   445,
+   188,   454,   280,    59,   556,   324,   324,   677,    52,   235,
+   562,   565,   130,   577,   608,   274,   343,   456,   665,   126,
+   619,   489,   290,   600,   623,   264,   586,   469,   696,   589,
+   674,   391,   609,   571,   579,   325,   140,   559,   441,   377,
+   649,   679,   434,     0,     0,   585,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   368,     0,   368,   368,     0,   474,
+     0,     0,     0,     0,     0,     0,     0,   619,     0,     0,
+     0,     0,   605,     0,     0,   430,     0,     0,     0,     0,
+     0,     0,     0,     0,   615,     0,     0,     0,     0,     0,
+   617,   562,   565,     0,     0,   626,   422,   630,   422,     0,
+   565,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,     0,     0,   644,     0,   645,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,     0,   544,   543,     0,     0,     0,     0,
+     0,     0,   670,     0,     0,   249,     0,     0,   565,     0,
+     0,     0,     0,     0,     0,     0,     0,   683,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,     0,   692,     0,     0,     0,   697,     0,     0,
+     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+   332,     0,     0,     0,     0,     0,     0,     0,     0,     0,
+     0,     0,   383
+};
+
+static const short yycheck[] = {     0,
+   156,   216,    83,   110,   346,   310,   154,   155,   346,   157,
+   158,   346,   160,   161,   373,   163,   162,   514,   272,   273,
+   129,   275,   276,   129,   278,   279,   107,   281,   418,    29,
+   208,   472,   486,   238,   593,   456,    10,   456,    62,   120,
+    13,    41,   601,    55,    16,    13,    13,    59,    53,    50,
+    61,    13,    72,    54,    59,    75,    57,    58,    78,   166,
+    18,    28,   316,    16,    65,    66,    67,   148,    41,    70,
+    90,    43,   277,    45,   628,    47,   224,    49,   437,    80,
+    52,    43,    83,    45,   165,    33,   291,    61,    61,    89,
+   649,   545,   116,    61,    34,   201,    49,    98,    53,    52,
+   521,    59,   521,    58,   658,   677,   107,   213,    10,   110,
+    58,    61,   112,   554,   221,     0,     1,    36,    13,    13,
+   227,    61,   327,   229,   144,   697,   146,    29,    13,    14,
+    15,    16,    17,   153,    19,    13,    38,    22,   139,    31,
+    13,    13,    61,    28,    61,   145,    41,    41,    40,    34,
+    28,   232,   573,   574,   573,   574,    41,    13,    43,   600,
+    16,   366,    61,     9,   165,    53,    13,    13,    41,    41,
+    16,    59,    28,    53,    20,    21,   354,   555,    58,   557,
+   558,    51,    28,   184,    30,    53,   187,   392,   189,    27,
+    58,   300,   689,    35,   553,    53,    42,    43,    44,   404,
+    58,    53,   203,    57,   563,    59,    58,   208,    61,   229,
+    63,    64,    65,    66,    35,   216,   398,   399,   400,   219,
+   220,    61,   222,   223,    61,   225,   226,    61,   228,   230,
+     3,     4,     5,     6,    61,    62,   626,   237,   380,   381,
+   382,    37,     9,    39,    35,    43,    13,    45,   248,    16,
+    27,     0,     1,    20,    21,    61,    62,   258,   259,     7,
+     8,    28,   262,    30,    13,    14,    15,    16,    17,    51,
+    19,   271,    37,    22,    39,    42,    57,    44,    59,    28,
+   597,   661,   599,   663,    34,    34,    33,   288,    58,    59,
+   573,   574,    41,   294,    43,   296,   496,   497,   706,   707,
+    51,    35,    17,    35,    22,    35,   307,    35,    54,   310,
+    32,    18,    18,    34,    59,    18,    18,    61,    61,    61,
+    61,    59,   323,    59,    61,    18,    27,    27,    61,    58,
+   331,    58,   333,    18,   480,    61,    61,    27,   339,    58,
+    13,    18,    59,    51,   345,   346,    58,   453,    61,   456,
+    61,   605,    61,   354,    58,    27,    12,    54,    54,    58,
+    58,   703,   362,    58,   512,   703,   367,   513,   703,    58,
+    58,   372,    58,    51,   374,    58,    58,    61,    58,   380,
+   381,   382,    61,    58,    48,   386,   691,    61,    58,    46,
+    61,    54,   393,    35,   394,    54,    61,   398,   399,   400,
+    46,   401,    35,    48,    54,    12,    59,   407,    48,    61,
+   411,    35,    35,    32,   521,    58,    50,    58,    35,    35,
+    18,    58,    61,    61,    37,   426,    58,    58,   429,    18,
+    25,   646,    54,    11,    35,    35,    35,    58,    40,    26,
+    48,    11,    57,    11,    58,    11,    58,    35,    58,    58,
+    61,    13,    58,    58,    35,   456,    53,    60,    18,    63,
+    56,    53,   463,    27,    58,    58,   573,   574,    59,    53,
+    35,    45,    58,    58,    53,    58,    58,     0,     0,    13,
+   148,    61,   258,   134,   485,   485,   487,    63,   453,   385,
+   120,   388,   227,    46,   495,   496,   497,   653,    35,   166,
+   501,   502,    92,   521,   576,   221,   307,   393,   635,    86,
+   591,   427,   232,   560,   592,   209,   535,   410,   678,   545,
+   648,   340,   577,   511,   524,   289,   101,   498,   383,   332,
+   623,   655,   377,    -1,    -1,   535,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,   555,    -1,   557,   558,    -1,   560,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,   648,    -1,    -1,
+    -1,    -1,   572,    -1,    -1,   576,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,   585,    -1,    -1,    -1,    -1,    -1,
+   590,   592,   593,    -1,    -1,   595,   597,   598,   599,    -1,
+   601,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,   617,    -1,   618,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,    -1,   635,   635,    -1,    -1,    -1,    -1,
+    -1,    -1,   643,    -1,    -1,   646,    -1,    -1,   649,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,   658,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,    -1,   673,    -1,    -1,    -1,   678,    -1,    -1,
+    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+   691,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
+    -1,    -1,   703
+};
+/* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
+#line 3 "/PRODUCTS/flexbis-253-125/share/bison.simple"
+
+/* Skeleton output parser for bison,
+   Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+
+/* As a special exception, when this file is copied by Bison into a
+   Bison output file, you may use that output file without restriction.
+   This special exception was added by the Free Software Foundation
+   in version 1.24 of Bison.  */
+
+#ifndef alloca
+#ifdef __GNUC__
+#define alloca __builtin_alloca
+#else /* not GNU C.  */
+#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
+#include <alloca.h>
+#else /* not sparc */
+#if (  defined( MSDOS ) || defined( WNT )  ) && !defined (__TURBOC__)
+#include <malloc.h>
+#else /* not MSDOS, or __TURBOC__ */
+#if defined(_AIX)
+#include <malloc.h>
+ #pragma alloca
+#else /* not MSDOS, __TURBOC__, or _AIX */
+#ifdef __hpux
+#ifdef __cplusplus
+extern "C" {
+void *alloca (unsigned int);
+};
+#else /* not __cplusplus */
+void *alloca ();
+#endif /* not __cplusplus */
+#endif /* __hpux */
+#endif /* not _AIX */
+#endif /* not MSDOS, or __TURBOC__ */
+#endif /* not sparc.  */
+#endif /* not GNU C.  */
+#endif /* alloca not defined.  */
+
+/* This is the parser code that is written into each bison parser
+  when the %semantic_parser declaration is not specified in the grammar.
+  It was written by Richard Stallman by simplifying the hairy parser
+  used when %semantic_parser is specified.  */
+
+/* Note: there must be only one dollar sign in this file.
+   It is replaced by the list of actions, each action
+   as one case of the switch.  */
+
+#define yyerrok                (yyerrstatus = 0)
+#define yyclearin      (yychar = YYEMPTY)
+#define YYEMPTY                -2
+#define YYEOF          0
+#define YYACCEPT       return(0)
+#define YYABORT        return(1)
+#define YYERROR                goto yyerrlab1
+/* Like YYERROR except do call yyerror.
+   This remains here temporarily to ease the
+   transition to the new meaning of YYERROR, for GCC.
+   Once GCC version 2 has supplanted version 1, this can go.  */
+#define YYFAIL         goto yyerrlab
+#define YYRECOVERING()  (!!yyerrstatus)
+#define YYBACKUP(token, value) \
+do                                                             \
+  if (yychar == YYEMPTY && yylen == 1)                         \
+    { yychar = (token), yylval = (value);                      \
+      yychar1 = YYTRANSLATE (yychar);                          \
+      YYPOPSTACK;                                              \
+      goto yybackup;                                           \
+    }                                                          \
+  else                                                         \
+    { yyerror ("syntax error: cannot back up"); YYERROR; }     \
+while (0)
+
+#define YYTERROR       1
+#define YYERRCODE      256
+
+#ifndef YYPURE
+#define YYLEX          yylex()
+#endif
+
+#ifdef YYPURE
+#ifdef YYLSP_NEEDED
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, &yylloc, YYLEX_PARAM)
+#else
+#define YYLEX          yylex(&yylval, &yylloc)
+#endif
+#else /* not YYLSP_NEEDED */
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, YYLEX_PARAM)
+#else
+#define YYLEX          yylex(&yylval)
+#endif
+#endif /* not YYLSP_NEEDED */
+#endif
+
+/* If nonreentrant, generate the variables here */
+
+#ifndef YYPURE
+
+int    yychar;                 /*  the lookahead symbol                */
+YYSTYPE        yylval;                 /*  the semantic value of the           */
+                               /*  lookahead symbol                    */
+
+#ifdef YYLSP_NEEDED
+YYLTYPE yylloc;                        /*  location data for the lookahead     */
+                               /*  symbol                              */
+#endif
+
+int yynerrs;                   /*  number of parse errors so far       */
+#endif  /* not YYPURE */
+
+#if YYDEBUG != 0
+int yydebug;                   /*  nonzero means print parse trace     */
+/* Since this is uninitialized, it does not stop multiple parsers
+   from coexisting.  */
+#endif
+
+/*  YYINITDEPTH indicates the initial size of the parser's stacks      */
+
+#ifndef        YYINITDEPTH
+#define YYINITDEPTH 200
+#endif
+
+/*  YYMAXDEPTH is the maximum size the stacks can grow to
+    (effective only if the built-in stack extension method is used).  */
+
+#if YYMAXDEPTH == 0
+#undef YYMAXDEPTH
+#endif
+
+#ifndef YYMAXDEPTH
+#define YYMAXDEPTH 10000
+#endif
+
+/* Prevent warning if -Wstrict-prototypes.  */
+#ifdef __GNUC__
+int yyparse (void);
+#endif
+\f
+#if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
+#ifdef WNT
+#define __yy_bcopy(FROM,TO,COUNT)      __builtin_memcpy(TO,FROM,COUNT)
+#else
+#define __yy_memcpy(TO,FROM,COUNT)     __builtin_memcpy(TO,FROM,COUNT)
+#endif
+#else                          /* not GNU C or C++ */
+#ifndef __cplusplus
+
+/* This is the most reliable way to avoid incompatibilities
+   in available built-in functions on various systems.  */
+static void
+#ifdef WNT
+__yy_bcopy (__from, __to, __count)
+     char *__from;
+     char *__to;
+     int __count;
+#else
+__yy_memcpy (to, from, count)
+     char *to;
+     char *from;
+     int count;
+#endif
+{
+#ifdef WNT
+  register char *f = __from;
+  register char *t = __to;
+  register int i = __count;
+#else
+  register char *f = from;
+  register char *t = to;
+  register int i = count;
+#endif
+
+  while (i-- > 0)
+    *t++ = *f++;
+}
+
+#else /* __cplusplus */
+
+/* This is the most reliable way to avoid incompatibilities
+   in available built-in functions on various systems.  */
+static void
+#ifdef WNT
+__yy_bcopy (char *__from, char *__to, int __count)
+#else
+__yy_memcpy (char *to, char *from, int count)
+#endif
+{
+#ifdef WNT
+  register char *f = __from;
+  register char *t = __to;
+  register int i = __count;
+#else
+  register char *f = from;
+  register char *t = to;
+  register int i = count;
+#endif
+
+  while (i-- > 0)
+    *t++ = *f++;
+}
+
+#endif
+#endif
+\f
+#line 196 "/PRODUCTS/flexbis-253-125/share/bison.simple"
+
+/* The user can define YYPARSE_PARAM as the name of an argument to be passed
+   into yyparse.  The argument should have type void *.
+   It should actually point to an object.
+   Grammar actions can access the variable by casting it
+   to the proper pointer type.  */
+
+#ifdef YYPARSE_PARAM
+#ifdef __cplusplus
+#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL
+#else /* not __cplusplus */
+#define YYPARSE_PARAM_ARG YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
+#endif /* not __cplusplus */
+#else /* not YYPARSE_PARAM */
+#define YYPARSE_PARAM_ARG
+#define YYPARSE_PARAM_DECL
+#endif /* not YYPARSE_PARAM */
+
+int
+#ifdef WNT
+yyparse()
+#else
+yyparse(YYPARSE_PARAM_ARG)
+     YYPARSE_PARAM_DECL
+#endif
+{
+  register int yystate;
+  register int yyn;
+  register short *yyssp;
+  register YYSTYPE *yyvsp;
+  int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
+  int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
+
+  short        yyssa[YYINITDEPTH];     /*  the state stack                     */
+  YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
+
+  short *yyss = yyssa;         /*  refer to the stacks thru separate pointers */
+  YYSTYPE *yyvs = yyvsa;       /*  to allow yyoverflow to reallocate them elsewhere */
+
+#ifdef YYLSP_NEEDED
+  YYLTYPE yylsa[YYINITDEPTH];  /*  the location stack                  */
+  YYLTYPE *yyls = yylsa;
+  YYLTYPE *yylsp;
+
+#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
+#else
+#define YYPOPSTACK   (yyvsp--, yyssp--)
+#endif
+
+  int yystacksize = YYINITDEPTH;
+
+#ifdef YYPURE
+  int yychar;
+  YYSTYPE yylval;
+  int yynerrs;
+#ifdef YYLSP_NEEDED
+  YYLTYPE yylloc;
+#endif
+#endif
+
+  YYSTYPE yyval;               /*  the variable used to return         */
+                               /*  semantic values from the action     */
+                               /*  routines                            */
+
+  int yylen;
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Starting parse\n");
+#endif
+
+  yystate = 0;
+  yyerrstatus = 0;
+  yynerrs = 0;
+  yychar = YYEMPTY;            /* Cause a token to be read.  */
+
+  /* Initialize stack pointers.
+     Waste one element of value and location stack
+     so that they stay on the same level as the state stack.
+     The wasted elements are never initialized.  */
+
+  yyssp = yyss - 1;
+  yyvsp = yyvs;
+#ifdef YYLSP_NEEDED
+  yylsp = yyls;
+#endif
+
+/* Push a new state, which is found in  yystate  .  */
+/* In all cases, when you get here, the value and location stacks
+   have just been pushed. so pushing a state here evens the stacks.  */
+yynewstate:
+
+  *++yyssp = yystate;
+
+  if (yyssp >= yyss + yystacksize - 1)
+    {
+      /* Give user a chance to reallocate the stack */
+      /* Use copies of these so that the &'s don't force the real ones into memory. */
+      YYSTYPE *yyvs1 = yyvs;
+      short *yyss1 = yyss;
+#ifdef YYLSP_NEEDED
+      YYLTYPE *yyls1 = yyls;
+#endif
+
+      /* Get the current used size of the three stacks, in elements.  */
+      int size = yyssp - yyss + 1;
+
+#ifdef yyoverflow
+      /* Each stack pointer address is followed by the size of
+        the data in use in that stack, in bytes.  */
+#ifdef YYLSP_NEEDED
+      /* This used to be a conditional around just the two extra args,
+        but that might be undefined if yyoverflow is a macro.  */
+      yyoverflow("parser stack overflow",
+                &yyss1, size * sizeof (*yyssp),
+                &yyvs1, size * sizeof (*yyvsp),
+                &yyls1, size * sizeof (*yylsp),
+                &yystacksize);
+#else
+      yyoverflow("parser stack overflow",
+                &yyss1, size * sizeof (*yyssp),
+                &yyvs1, size * sizeof (*yyvsp),
+                &yystacksize);
+#endif
+
+      yyss = yyss1; yyvs = yyvs1;
+#ifdef YYLSP_NEEDED
+      yyls = yyls1;
+#endif
+#else /* no yyoverflow */
+      /* Extend the stack our own way.  */
+      if (yystacksize >= YYMAXDEPTH)
+       {
+         yyerror("parser stack overflow");
+         return 2;
+       }
+      yystacksize *= 2;
+      if (yystacksize > YYMAXDEPTH)
+       yystacksize = YYMAXDEPTH;
+      yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
+#ifdef WNT
+      __yy_bcopy ((char *)yyss1, (char *)yyss, size * sizeof (*yyssp));
+#else
+      __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp));
+#endif
+      yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
+#ifdef WNT
+      __yy_bcopy ((char *)yyvs1, (char *)yyvs, size * sizeof (*yyvsp));
+#else
+      __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp));
+#endif
+#ifdef YYLSP_NEEDED
+      yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
+#ifdef WNT
+      __yy_bcopy ((char *)yyls1, (char *)yyls, size * sizeof (*yylsp));
+#else
+      __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp));
+#endif
+#endif
+#endif /* no yyoverflow */
+
+      yyssp = yyss + size - 1;
+      yyvsp = yyvs + size - 1;
+#ifdef YYLSP_NEEDED
+      yylsp = yyls + size - 1;
+#endif
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Stack size increased to %d\n", yystacksize);
+#endif
+
+      if (yyssp >= yyss + yystacksize - 1)
+       YYABORT;
+    }
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Entering state %d\n", yystate);
+#endif
+
+  goto yybackup;
+ yybackup:
+
+/* Do appropriate processing given the current state.  */
+/* Read a lookahead token if we need one and don't already have one.  */
+/* yyresume: */
+
+  /* First try to decide what to do without reference to lookahead token.  */
+
+  yyn = yypact[yystate];
+  if (yyn == YYFLAG)
+    goto yydefault;
+
+  /* Not known => get a lookahead token if don't already have one.  */
+
+  /* yychar is either YYEMPTY or YYEOF
+     or a valid token in external form.  */
+
+  if (yychar == YYEMPTY)
+    {
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Reading a token: ");
+#endif
+      yychar = YYLEX;
+    }
+
+  /* Convert token to internal form (in yychar1) for indexing tables with */
+
+  if (yychar <= 0)             /* This means end of input. */
+    {
+      yychar1 = 0;
+      yychar = YYEOF;          /* Don't call YYLEX any more */
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Now at end of input.\n");
+#endif
+    }
+  else
+    {
+      yychar1 = YYTRANSLATE(yychar);
+
+#if YYDEBUG != 0
+      if (yydebug)
+       {
+         fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
+         /* Give the individual parser a way to print the precise meaning
+            of a token, for further debugging info.  */
+#ifdef YYPRINT
+         YYPRINT (stderr, yychar, yylval);
+#endif
+         fprintf (stderr, ")\n");
+       }
+#endif
+    }
+
+  yyn += yychar1;
+  if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
+    goto yydefault;
+
+  yyn = yytable[yyn];
+
+  /* yyn is what to do for this token type in this state.
+     Negative => reduce, -yyn is rule number.
+     Positive => shift, yyn is new state.
+       New state is final state => don't bother to shift,
+       just return success.
+     0, or most negative number => error.  */
+
+  if (yyn < 0)
+    {
+      if (yyn == YYFLAG)
+       goto yyerrlab;
+      yyn = -yyn;
+      goto yyreduce;
+    }
+  else if (yyn == 0)
+    goto yyerrlab;
+
+  if (yyn == YYFINAL)
+    YYACCEPT;
+
+  /* Shift the lookahead token.  */
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
+#endif
+
+  /* Discard the token being shifted unless it is eof.  */
+  if (yychar != YYEOF)
+    yychar = YYEMPTY;
+
+  *++yyvsp = yylval;
+#ifdef YYLSP_NEEDED
+  *++yylsp = yylloc;
+#endif
+
+  /* count tokens shifted since error; after three, turn off error status.  */
+  if (yyerrstatus) yyerrstatus--;
+
+  yystate = yyn;
+  goto yynewstate;
+
+/* Do the default action for the current state.  */
+yydefault:
+
+  yyn = yydefact[yystate];
+  if (yyn == 0)
+    goto yyerrlab;
+
+/* Do a reduction.  yyn is the number of a rule to reduce with.  */
+yyreduce:
+  yylen = yyr2[yyn];
+  if (yylen > 0)
+    yyval = yyvsp[1-yylen]; /* implement default value of the action */
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      int i;
+
+      fprintf (stderr, "Reducing via rule %d (line %d), ",
+              yyn, yyrline[yyn]);
+
+      /* Print the symbols being reduced, and their result.  */
+      for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
+       fprintf (stderr, "%s ", yytname[yyrhs[i]]);
+      fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
+    }
+#endif
+
+
+  switch (yyn) {
+
+case 14:
+#line 133 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Pack_Begin(yyvsp[0].str); ;
+    break;}
+case 15:
+#line 137 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Pack_End(); ;
+    break;}
+case 21:
+#line 147 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Pack_Use(yyvsp[0].str); ;
+    break;}
+case 22:
+#line 148 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Pack_Use(yyvsp[0].str); ;
+    break;}
+case 24:
+#line 156 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Interface_Begin(yyvsp[0].str); ;
+    break;}
+case 31:
+#line 171 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Use(yyvsp[0].str);;
+    break;}
+case 32:
+#line 172 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Interface_Use(yyvsp[0].str); ;
+    break;}
+case 37:
+#line 180 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Interface_Package(yyvsp[-1].str); ;
+    break;}
+case 41:
+#line 187 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Method_TypeName(); ;
+    break;}
+case 43:
+#line 188 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Method(yyvsp[-2].str);;
+    break;}
+case 44:
+#line 191 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Method("");;
+    break;}
+case 45:
+#line 192 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Method("");;
+    break;}
+case 46:
+#line 193 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Method("");;
+    break;}
+case 48:
+#line 197 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ CDLerror("in interface, method declaration can not have a 'returns' clause"); ;
+    break;}
+case 49:
+#line 201 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Schema_Begin(yyvsp[0].str); ;
+    break;}
+case 50:
+#line 204 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Schema_End(); ;
+    break;}
+case 58:
+#line 217 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Schema_Package(yyvsp[-1].str); ;
+    break;}
+case 59:
+#line 218 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Schema_Class(); ;
+    break;}
+case 60:
+#line 223 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Engine_Begin(yyvsp[0].str); ;
+    break;}
+case 66:
+#line 238 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Engine_Schema(yyvsp[0].str); ;
+    break;}
+case 73:
+#line 249 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Engine_Interface(yyvsp[-1].str); ;
+    break;}
+case 74:
+#line 254 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Component_Begin(yyvsp[0].str); ;
+    break;}
+case 75:
+#line 258 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Component_End(); ;
+    break;}
+case 83:
+#line 274 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Component_Interface(yyvsp[-3].str,yyvsp[-1].str); ;
+    break;}
+case 84:
+#line 280 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_Begin(yyvsp[0].str); ;
+    break;}
+case 90:
+#line 295 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_Use ( yyvsp[0].str ); ;
+    break;}
+case 91:
+#line 296 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_Use ( yyvsp[0].str ); ;
+    break;}
+case 93:
+#line 300 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_End(); ;
+    break;}
+case 94:
+#line 301 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_End(); ;
+    break;}
+case 99:
+#line 311 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Client_Interface(yyvsp[-1].str); ;
+    break;}
+case 101:
+#line 315 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Method_TypeName(); ;
+    break;}
+case 103:
+#line 316 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method(yyvsp[-2].str,1);;
+    break;}
+case 104:
+#line 317 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method(yyvsp[-4].str,1);;
+    break;}
+case 105:
+#line 320 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",1);;
+    break;}
+case 106:
+#line 321 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",1);;
+    break;}
+case 107:
+#line 322 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",1);;
+    break;}
+case 108:
+#line 323 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",1);;
+    break;}
+case 109:
+#line 324 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",-1);;
+    break;}
+case 110:
+#line 325 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Client_Method("",-1);;
+    break;}
+case 112:
+#line 329 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ CDLerror("in client, method declaration can not have a 'returns' clause"); ;
+    break;}
+case 113:
+#line 333 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Executable_Begin(yyvsp[-1].str); ;
+    break;}
+case 117:
+#line 341 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{  Executable_End(); ;
+    break;}
+case 118:
+#line 342 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Executable_End(); ;
+    break;}
+case 121:
+#line 349 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_Begin(yyvsp[0].str); ;
+    break;}
+case 122:
+#line 353 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_End(); ;
+    break;}
+case 127:
+#line 364 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_Schema(yyvsp[0].str); ;
+    break;}
+case 132:
+#line 375 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ExecFile_AddUse(yyvsp[-2].str);;
+    break;}
+case 133:
+#line 378 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ExecFile_SetUseType(CDL_LIBRARY); ;
+    break;}
+case 134:
+#line 379 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ExecFile_SetUseType(CDL_EXTERNAL); ;
+    break;}
+case 139:
+#line 390 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_AddComponent(yyvsp[-2].str); ;
+    break;}
+case 140:
+#line 392 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_SetLang(CDL_CPP); ;
+    break;}
+case 142:
+#line 396 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_SetLang(CDL_CPP); ;
+    break;}
+case 143:
+#line 397 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_SetLang(CDL_FOR); ;
+    break;}
+case 144:
+#line 398 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_SetLang(CDL_C); ;
+    break;}
+case 145:
+#line 399 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ ExecFile_SetLang(CDL_OBJ); ;
+    break;}
+case 173:
+#line 451 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Std_Ancestors(); ;
+    break;}
+case 174:
+#line 452 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Std_Uses(); ;
+    break;}
+case 177:
+#line 469 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Std_Ancestors(); ;
+    break;}
+case 178:
+#line 470 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Std_Uses(); ;
+    break;}
+case 189:
+#line 496 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Set_Item(yyvsp[0].str); ;
+    break;}
+case 206:
+#line 522 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Type(); ;
+    break;}
+case 207:
+#line 523 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Type(); ;
+    break;}
+case 208:
+#line 525 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Type_Name(yyvsp[0].str); Type_Pack_Blanc(); ;
+    break;}
+case 209:
+#line 526 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Type_Name(yyvsp[-1].str); ;
+    break;}
+case 210:
+#line 526 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Type_Pack(yyvsp[0].str); ;
+    break;}
+case 221:
+#line 590 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Enum(yyvsp[0].str); ;
+    break;}
+case 222:
+#line 591 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Enum(yyvsp[0].str); ;
+    break;}
+case 224:
+#line 597 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ add_cpp_comment_to_method(); ;
+    break;}
+case 228:
+#line 604 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Set_Method(yyvsp[0].str); ;
+    break;}
+case 233:
+#line 611 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ add_cpp_comment_to_method(); ;
+    break;}
+case 279:
+#line 725 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Value(yyvsp[0].str,INTEGER); ;
+    break;}
+case 280:
+#line 726 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Value(yyvsp[0].str,REAL); ;
+    break;}
+case 281:
+#line 727 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Value(yyvsp[0].str,STRING); ;
+    break;}
+case 282:
+#line 728 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Value(yyvsp[0].str,LITERAL); ;
+    break;}
+case 283:
+#line 729 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_Value(yyvsp[0].str,IDENTIFIER); ;
+    break;}
+case 308:
+#line 777 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Begin_List_Int(yyvsp[0].str); ;
+    break;}
+case 309:
+#line 778 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Make_List_Int(yyvsp[0].str); ;
+    break;}
+case 311:
+#line 784 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ CDL_MustNotCheckUses(); ;
+    break;}
+case 312:
+#line 784 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ CDL_MustCheckUses(); ;
+    break;}
+case 318:
+#line 794 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Method_TypeName(); ;
+    break;}
+case 320:
+#line 796 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ Add_FriendExtMet(yyvsp[-1].str); ;
+    break;}
+case 334:
+#line 825 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ add_name_to_list(yyvsp[0].str); ;
+    break;}
+case 335:
+#line 826 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ add_name_to_list(yyvsp[0].str); ;
+    break;}
+case 337:
+#line 830 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{yyval.str[0] = '\0';;
+    break;}
+case 338:
+#line 837 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{set_inc_state();;
+    break;}
+case 339:
+#line 838 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{restore_state();;
+    break;}
+case 340:
+#line 840 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_Class();;
+    break;}
+case 341:
+#line 841 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Interface_End();;
+    break;}
+case 342:
+#line 843 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Engine_End();;
+    break;}
+case 343:
+#line 845 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Alias_Begin();;
+    break;}
+case 344:
+#line 846 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Alias_Type();;
+    break;}
+case 345:
+#line 847 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Alias_End();;
+    break;}
+case 346:
+#line 849 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Pointer_Begin();;
+    break;}
+case 347:
+#line 850 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Pointer_Type();;
+    break;}
+case 348:
+#line 851 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Pointer_End();;
+    break;}
+case 349:
+#line 853 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Imported_Begin();;
+    break;}
+case 350:
+#line 854 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Imported_End();;
+    break;}
+case 351:
+#line 856 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Prim_Begin();;
+    break;}
+case 352:
+#line 857 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Prim_End();;
+    break;}
+case 353:
+#line 859 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Except_Begin();;
+    break;}
+case 354:
+#line 860 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Except_End();;
+    break;}
+case 355:
+#line 862 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Enum_Begin();;
+    break;}
+case 356:
+#line 863 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Enum_End();;
+    break;}
+case 357:
+#line 865 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Inc_Class_Dec();;
+    break;}
+case 358:
+#line 866 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Inc_GenClass_Dec();;
+    break;}
+case 359:
+#line 868 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{GenClass_Begin();;
+    break;}
+case 360:
+#line 869 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_GenType();;
+    break;}
+case 361:
+#line 870 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_DynaGenType();;
+    break;}
+case 362:
+#line 871 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Embeded();;
+    break;}
+case 363:
+#line 872 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{GenClass_End();;
+    break;}
+case 364:
+#line 874 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{InstClass_Begin();;
+    break;}
+case 365:
+#line 875 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Gen_Class();;
+    break;}
+case 366:
+#line 876 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_InstType();;
+    break;}
+case 367:
+#line 877 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{InstClass_End();;
+    break;}
+case 368:
+#line 878 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{DynaType_Begin();;
+    break;}
+case 369:
+#line 880 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{StdClass_Begin();;
+    break;}
+case 370:
+#line 881 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{StdClass_End();;
+    break;}
+case 371:
+#line 883 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Raises();;
+    break;}
+case 372:
+#line 884 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Field();;
+    break;}
+case 373:
+#line 885 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_FriendMet();;
+    break;}
+case 374:
+#line 886 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Friend_Class();;
+    break;}
+case 375:
+#line 888 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Construct_Begin();;
+    break;}
+case 376:
+#line 889 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{InstMet_Begin();;
+    break;}
+case 377:
+#line 890 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ClassMet_Begin();;
+    break;}
+case 378:
+#line 891 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ExtMet_Begin();;
+    break;}
+case 379:
+#line 892 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Friend_Construct_Begin();;
+    break;}
+case 380:
+#line 893 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Friend_InstMet_Begin();;
+    break;}
+case 381:
+#line 894 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Friend_ClassMet_Begin();;
+    break;}
+case 382:
+#line 895 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Friend_ExtMet_Begin();;
+    break;}
+case 383:
+#line 896 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Me();;
+    break;}
+case 384:
+#line 897 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_MetRaises();;
+    break;}
+case 385:
+#line 898 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Add_Returns();;
+    break;}
+case 386:
+#line 899 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{MemberMet_End();;
+    break;}
+case 387:
+#line 900 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{ExternMet_End();;
+    break;}
+case 388:
+#line 902 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Param_Begin();;
+    break;}
+case 389:
+#line 904 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{End();;
+    break;}
+case 390:
+#line 905 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_In();;
+    break;}
+case 391:
+#line 906 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Out();;
+    break;}
+case 392:
+#line 907 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_InOut();;
+    break;}
+case 393:
+#line 908 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Mutable();;
+    break;}
+case 394:
+#line 909 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Mutable_Any();;
+    break;}
+case 395:
+#line 910 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Immutable();;
+    break;}
+case 396:
+#line 911 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Priv();;
+    break;}
+case 397:
+#line 912 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Defe();;
+    break;}
+case 398:
+#line 913 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Redefined();;
+    break;}
+case 399:
+#line 914 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Prot();;
+    break;}
+case 400:
+#line 915 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Static();;
+    break;}
+case 401:
+#line 916 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Virtual();;
+    break;}
+case 402:
+#line 917 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Like_Me();;
+    break;}
+case 403:
+#line 918 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+{Set_Any();;
+    break;}
+}
+   /* the action file gets copied in in place of this dollarsign */
+#line 498 "/PRODUCTS/flexbis-253-125/share/bison.simple"
+\f
+  yyvsp -= yylen;
+  yyssp -= yylen;
+#ifdef YYLSP_NEEDED
+  yylsp -= yylen;
+#endif
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      short *ssp1 = yyss - 1;
+      fprintf (stderr, "state stack now");
+      while (ssp1 != yyssp)
+       fprintf (stderr, " %d", *++ssp1);
+      fprintf (stderr, "\n");
+    }
+#endif
+
+  *++yyvsp = yyval;
+
+#ifdef YYLSP_NEEDED
+  yylsp++;
+  if (yylen == 0)
+    {
+      yylsp->first_line = yylloc.first_line;
+      yylsp->first_column = yylloc.first_column;
+      yylsp->last_line = (yylsp-1)->last_line;
+      yylsp->last_column = (yylsp-1)->last_column;
+      yylsp->text = 0;
+    }
+  else
+    {
+      yylsp->last_line = (yylsp+yylen-1)->last_line;
+      yylsp->last_column = (yylsp+yylen-1)->last_column;
+    }
+#endif
+
+  /* Now "shift" the result of the reduction.
+     Determine what state that goes to,
+     based on the state we popped back to
+     and the rule number reduced by.  */
+
+  yyn = yyr1[yyn];
+
+  yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
+  if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
+    yystate = yytable[yystate];
+  else
+    yystate = yydefgoto[yyn - YYNTBASE];
+
+  goto yynewstate;
+
+yyerrlab:   /* here on detecting error */
+
+  if (! yyerrstatus)
+    /* If not already recovering from an error, report this error.  */
+    {
+      ++yynerrs;
+
+#ifdef YYERROR_VERBOSE
+      yyn = yypact[yystate];
+
+      if (yyn > YYFLAG && yyn < YYLAST)
+       {
+         int size = 0;
+         char *msg;
+         int x, count;
+
+         count = 0;
+         /* Start X at -yyn if nec to avoid negative indexes in yycheck.  */
+         for (x = (yyn < 0 ? -yyn : 0);
+              x < (sizeof(yytname) / sizeof(char *)); x++)
+           if (yycheck[x + yyn] == x)
+             size += strlen(yytname[x]) + 15, count++;
+         msg = (char *) malloc(size + 15);
+         if (msg != 0)
+           {
+             strcpy(msg, "parse error");
+
+             if (count < 5)
+               {
+                 count = 0;
+                 for (x = (yyn < 0 ? -yyn : 0);
+                      x < (sizeof(yytname) / sizeof(char *)); x++)
+                   if (yycheck[x + yyn] == x)
+                     {
+                       strcat(msg, count == 0 ? ", expecting `" : " or `");
+                       strcat(msg, yytname[x]);
+                       strcat(msg, "'");
+                       count++;
+                     }
+               }
+             yyerror(msg);
+             free(msg);
+           }
+         else
+           yyerror ("parse error; also virtual memory exceeded");
+       }
+      else
+#endif /* YYERROR_VERBOSE */
+       yyerror("parse error");
+    }
+
+  goto yyerrlab1;
+yyerrlab1:   /* here on error raised explicitly by an action */
+
+  if (yyerrstatus == 3)
+    {
+      /* if just tried and failed to reuse lookahead token after an error, discard it.  */
+
+      /* return failure if at end of input */
+      if (yychar == YYEOF)
+       YYABORT;
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
+#endif
+
+      yychar = YYEMPTY;
+    }
+
+  /* Else will try to reuse lookahead token
+     after shifting the error token.  */
+
+  yyerrstatus = 3;             /* Each real token shifted decrements this */
+
+  goto yyerrhandle;
+
+yyerrdefault:  /* current state does not do anything special for the error token. */
+
+#if 0
+  /* This is wrong; only states that explicitly want error tokens
+     should shift them.  */
+  yyn = yydefact[yystate];  /* If its default is to accept any token, ok.  Otherwise pop it.*/
+  if (yyn) goto yydefault;
+#endif
+
+yyerrpop:   /* pop the current state because it cannot handle the error token */
+
+  if (yyssp == yyss) YYABORT;
+  yyvsp--;
+  yystate = *--yyssp;
+#ifdef YYLSP_NEEDED
+  yylsp--;
+#endif
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      short *ssp1 = yyss - 1;
+      fprintf (stderr, "Error: state stack now");
+      while (ssp1 != yyssp)
+       fprintf (stderr, " %d", *++ssp1);
+      fprintf (stderr, "\n");
+    }
+#endif
+
+yyerrhandle:
+
+  yyn = yypact[yystate];
+  if (yyn == YYFLAG)
+    goto yyerrdefault;
+
+  yyn += YYTERROR;
+  if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
+    goto yyerrdefault;
+
+  yyn = yytable[yyn];
+  if (yyn < 0)
+    {
+      if (yyn == YYFLAG)
+       goto yyerrpop;
+      yyn = -yyn;
+      goto yyreduce;
+    }
+  else if (yyn == 0)
+    goto yyerrpop;
+
+  if (yyn == YYFINAL)
+    YYACCEPT;
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Shifting error token, ");
+#endif
+
+  *++yyvsp = yylval;
+#ifdef YYLSP_NEEDED
+  *++yylsp = yylloc;
+#endif
+
+  yystate = yyn;
+  goto yynewstate;
+}
+#line 919 "/adv_20/KAS/C40/ros/src/CDLFront/CDL.yacc"
+
diff --git a/src/CDLFront/CDLFront_Replace.tcl b/src/CDLFront/CDLFront_Replace.tcl
new file mode 100755 (executable)
index 0000000..9495e70
--- /dev/null
@@ -0,0 +1,69 @@
+proc CDLFront_Replace:AdmFileType {} {
+    return "dbadmfile";
+}
+
+proc CDLFront_Replace:OutputDirTypeName {} {
+    return "dbtmpfile";
+}
+
+
+proc CDLFront_Replace:HandleInputFile { ID } { 
+
+    scan $ID "%\[^:\]:%\[^:\]:%\[^:\]"  unit type name
+    
+    switch $name {
+         step.tab.c  {return 1;} 
+       default {
+           return 0;
+       }
+    }
+}
+
+proc CDLFront_Replace:Execute { unit args } {
+    
+    msgprint -i -c "CDLFront_Replace::Execute" "Copying of CDLFront includes  $unit $args "
+
+    global tcl_interactive
+
+    set tcl_interactive 1
+    package require Wokutils
+
+
+    if { [wokparam -e %Station $unit] != "wnt" } {
+       set copycmd "cp -p "
+       set replstr "/"
+    } else {
+       set copycmd "cmd /c copy"
+       set replstr "\\\\\\\\"
+    }
+    
+
+       set sourcename CDL.tab.c
+       set name       CDL.tab.c
+
+       set source    [woklocate -p CDLFront:source:$sourcename     [wokinfo -N $unit]]
+       set vistarget [woklocate -p CDLFront:privinclude:$name [wokinfo -N $unit]]
+#      set target    [wokinfo   -p CDLFront:privinclude:$name [wokinfo -N $unit]]
+msgprint -i -c "$source "
+       regsub -all "/" " $source $vistarget" $replstr  TheArgs
+
+        if { [file exist $vistarget] } {
+         set A [catch {eval "wokcmp $TheArgs"} result ]
+        } else {
+          set result 0 }
+       
+       if { ! $result } {
+           msgprint -i -c "CDLFront_Replace::Execute" "Copy $source to $vistarget"
+           if { [file exist $vistarget] && [wokparam -e %Station ] != "wnt" } {
+               eval exec "chmod u+w $vistarget"
+           }
+           eval exec "$copycmd $TheArgs"
+       } else {
+           msgprint -i -c "CDLFront_Replace::Execute" "No change in $source"
+       }
+
+    return 0;
+}
+
+
+
diff --git a/src/CDLFront/CDLFront_WOKSteps.edl b/src/CDLFront/CDLFront_WOKSteps.edl
new file mode 100755 (executable)
index 0000000..96dfe05
--- /dev/null
@@ -0,0 +1,20 @@
+-- File:       CDLFront_WOKSteps.edl
+-- Author:     Atelier CAS2000
+-- History:    Thu Jun 29 13:18:31 2000        Atelier CAS2000 Creation
+-- Copyright:   Matra Datavision 2000
+
+
+@set %CDLFront_WOKSteps_EDL = "";
+
+--- Insert your stuff Here
+
+ @set %CASCADESamplesJni_WOKSteps_EDL  = "";
+ @string %WOKSteps_XcppGroup += "xcpp.repl";
+ @set %WOKSteps_xcpp_repl     = "*CDLFront_Replace(obj.inc)";
+
+
+
+
+@set %WOKSteps_UseSourceInclude = "yes";
+
+