00001
00002
00003
00004
00005 #define YYBISON 1
00006
00007 #define yyparse TAO_PSDL_yyparse
00008 #define yylex TAO_PSDL_yylex
00009 #define yyerror TAO_PSDL_yyerror
00010 #define yylval TAO_PSDL_yylval
00011 #define yychar TAO_PSDL_yychar
00012 #define yydebug TAO_PSDL_yydebug
00013 #define yynerrs TAO_PSDL_yynerrs
00014 # define TAO_PSDL_SEMI 257
00015 # define TAO_PSDL_MODULE 258
00016 # define TAO_PSDL_COLON 259
00017 # define TAO_PSDL_OPEN_CURLY_BRACE 260
00018 # define TAO_PSDL_CLOSE_CURLY_BRACE 261
00019 # define TAO_PSDL_OPEN_BRACE 262
00020 # define TAO_PSDL_CLOSE_BRACE 263
00021 # define TAO_PSDL_ABSTRACT 264
00022 # define TAO_PSDL_STORAGETYPE 265
00023 # define TAO_PSDL_STORAGEHOME 266
00024 # define TAO_PSDL_CATALOG 267
00025 # define TAO_PSDL_PROVIDES 268
00026 # define TAO_PSDL_IMPLEMENTS 269
00027 # define TAO_PSDL_SCOPE 270
00028 # define TAO_PSDL_STORES 271
00029 # define TAO_PSDL_STATE 272
00030 # define TAO_PSDL_AS 273
00031 # define TAO_PSDL_PRIMARY 274
00032 # define TAO_PSDL_STRONG 275
00033 # define TAO_PSDL_REF 276
00034 # define TAO_PSDL_OF 277
00035 # define TAO_PSDL_OPEN_ANGULAR_BRACE 278
00036 # define TAO_PSDL_CLOSE_ANGULAR_BRACE 279
00037 # define TAO_PSDL_COMMA 280
00038 # define TAO_PSDL_KEY 281
00039 # define TAO_PSDL_READONLY 282
00040 # define TAO_PSDL_UNION 283
00041 # define TAO_PSDL_SWITCH 284
00042 # define TAO_PSDL_CASE 285
00043 # define TAO_PSDL_WCHAR 286
00044 # define TAO_PSDL_BOOLEAN 287
00045 # define TAO_PSDL_OCTET 288
00046 # define TAO_PSDL_ANY 289
00047 # define TAO_PSDL_OBJECT 290
00048 # define TAO_PSDL_STRUCT 291
00049 # define TAO_PSDL_DEFAULT 292
00050 # define TAO_PSDL_FLOAT 293
00051 # define TAO_PSDL_DOUBLE 294
00052 # define TAO_PSDL_LONG 295
00053 # define TAO_PSDL_SHORT 296
00054 # define TAO_PSDL_UNSIGNED 297
00055 # define TAO_PSDL_CHAR 298
00056 # define TAO_PSDL_IDENT 299
00057 # define TAO_PSDL_TYPEDEF 300
00058 # define TAO_PSDL_NATIVE 301
00059 # define TAO_PSDL_PLUS 302
00060 # define TAO_PSDL_MINUS 303
00061 # define TAO_PSDL_XOR 304
00062 # define TAO_PSDL_AND 305
00063 # define TAO_PSDL_MULT 306
00064 # define TAO_PSDL_RIGHT_SHIFT 307
00065 # define TAO_PSDL_LEFT_SHIFT 308
00066 # define TAO_PSDL_DIV 309
00067 # define TAO_PSDL_PERCENT 310
00068 # define TAO_PSDL_TILDA 311
00069 # define TAO_PSDL_ONEWAY 312
00070 # define TAO_PSDL_CONST 313
00071 # define TAO_PSDL_EQUAL 314
00072 # define TAO_PSDL_OR 315
00073 # define TAO_PSDL_VOID 316
00074 # define TAO_PSDL_IN 317
00075 # define TAO_PSDL_OUT 318
00076 # define TAO_PSDL_INOUT 319
00077 # define TAO_PSDL_RAISES 320
00078 # define TAO_PSDL_CONTEXT 321
00079 # define TAO_PSDL_FIXED 322
00080 # define TAO_PSDL_VALUEBASE 323
00081 # define TAO_PSDL_EXCEPTION 324
00082 # define TAO_PSDL_INTERFACE 325
00083 # define TAO_PSDL_LOCAL 326
00084 # define TAO_PSDL_DOUBLE_COLON 327
00085 # define TAO_PSDL_VALUETYPE 328
00086 # define TAO_PSDL_CUSTOM 329
00087 # define TAO_PSDL_TRUNCATABLE 330
00088 # define TAO_PSDL_SUPPORTS 331
00089 # define TAO_PSDL_STRING 332
00090 # define TAO_PSDL_WSTRING 333
00091 # define TAO_PSDL_ATTRIBUTE 334
00092 # define TAO_PSDL_OPEN_SQUARE_BRACE 335
00093 # define TAO_PSDL_CLOSE_SQUARE_BRACE 336
00094 # define TAO_PSDL_ENUM 337
00095 # define TAO_PSDL_SEQUENCE 338
00096 # define TAO_PSDL_TRUE 339
00097 # define TAO_PSDL_FALSE 340
00098 # define TAO_PSDL_INTEGER 341
00099 # define TAO_PSDL_FLOATING 342
00100 # define TAO_PSDL_PRIVATE 343
00101 # define TAO_PSDL_PUBLIC 344
00102 # define TAO_PSDL_FACTORY 345
00103 # define TAO_PSDL_FLOATING_PT 346
00104 # define TAO_PSDL_CHAR_LITERAL 347
00105 # define TAO_PSDL_FIXED_PT 348
00106
00107 #line 1 "PSDL.yy"
00108
00109
00110
00111
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123 #include "PSDL_y.h"
00124 #include "PSDL_Node.h"
00125 #include "PSDL_Interpreter.h"
00126 #include "PSDL_Scope.h"
00127 #include "PSDL_Module_Scope.h"
00128
00129 #define YYPARSE_PARAM lex_state
00130 #define YYLEX_PARAM lex_state
00131
00132
00133 extern int yylex (void);
00134
00135 static void yyerror (const char *error)
00136 {
00137 printf ("Error %s\n", error);
00138 }
00139
00140 #ifndef YYSTYPE
00141 # define YYSTYPE int
00142 # define YYSTYPE_IS_TRIVIAL 1
00143 #endif
00144 #ifndef YYDEBUG
00145 # define YYDEBUG 0
00146 #endif
00147
00148
00149
00150 #define YYFINAL 593
00151 #define YYFLAG -32768
00152 #define YYNTBASE 95
00153
00154
00155 #define YYTRANSLATE(x) ((unsigned)(x) <= 348 ? yytranslate[x] : 262)
00156
00157
00158 static const char yytranslate[] =
00159 {
00160 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00161 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00162 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00163 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00164 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00165 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00166 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00167 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00168 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00169 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00170 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00171 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00172 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00173 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00174 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00175 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00176 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00177 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00178 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00179 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00180 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00181 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00182 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00183 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00184 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
00185 2, 2, 2, 2, 2, 2, 1, 3, 4, 5,
00186 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
00187 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
00188 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
00189 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
00190 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
00191 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
00192 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
00193 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
00194 86, 87, 88, 89, 90, 91, 92, 93, 94
00195 };
00196
00197 #if YYDEBUG
00198 static const short yyprhs[] =
00199 {
00200 0, 0, 2, 5, 8, 11, 14, 17, 20, 23,
00201 26, 29, 32, 35, 38, 39, 46, 48, 50, 55,
00202 59, 63, 66, 70, 73, 75, 78, 81, 84, 87,
00203 89, 93, 98, 102, 104, 106, 108, 110, 112, 118,
00204 123, 125, 127, 131, 136, 140, 147, 153, 155, 158,
00205 161, 164, 167, 170, 172, 176, 181, 185, 191, 194,
00206 201, 207, 212, 218, 221, 223, 227, 229, 232, 235,
00207 238, 242, 244, 246, 251, 255, 258, 263, 267, 271,
00208 273, 276, 279, 282, 285, 288, 290, 293, 298, 301,
00209 307, 312, 314, 316, 321, 326, 330, 337, 343, 349,
00210 354, 356, 359, 362, 365, 368, 370, 373, 377, 381,
00211 383, 386, 388, 390, 392, 395, 397, 400, 402, 404,
00212 406, 408, 410, 412, 414, 416, 418, 420, 422, 424,
00213 426, 428, 430, 432, 434, 436, 438, 440, 442, 444,
00214 448, 450, 452, 454, 456, 460, 462, 464, 466, 469,
00215 471, 473, 475, 477, 479, 481, 483, 486, 488, 490,
00216 492, 495, 498, 502, 504, 506, 508, 510, 512, 514,
00217 515, 522, 524, 527, 531, 541, 543, 545, 547, 549,
00218 551, 553, 556, 560, 564, 567, 572, 576, 579, 585,
00219 587, 589, 591, 593, 595, 597, 599, 601, 603, 605,
00220 607, 609, 613, 615, 619, 621, 625, 627, 631, 635,
00221 637, 641, 645, 647, 651, 655, 659, 662, 664, 666,
00222 668, 670, 672, 674, 678, 681, 686, 690, 692, 699,
00223 705, 711, 717, 722, 727, 731, 733, 735, 737, 741,
00224 744, 748, 754, 756, 758, 760, 765, 772, 777, 779,
00225 781, 783, 785, 792, 794, 796, 799, 802, 804, 806,
00226 811, 815, 819, 823, 826, 829, 832, 835, 837, 841,
00227 845, 848, 850, 853, 856, 859, 862, 865, 868, 871,
00228 873, 877, 881, 883, 887, 889, 891, 893, 895, 897,
00229 900, 903, 905, 908, 915, 921, 926, 930, 933, 936,
00230 942, 947, 950, 954, 957, 962, 964, 969, 971, 974,
00231 978, 983, 987, 993, 995, 999, 1006, 1011, 1013, 1015,
00232 1017, 1019, 1021, 1023, 1025, 1027, 1029, 1031, 1033, 1035,
00233 1037, 1039, 1041, 1043, 1045, 1047, 1051, 1053, 1055, 1057,
00234 1062, 1067, 1074, 1080, 1082, 1086, 1090, 1092, 1094, 1098,
00235 1102
00236 };
00237 static const short yyrhs[] =
00238 {
00239 96, 0, 95, 96, 0, 150, 3, 0, 188, 3,
00240 0, 201, 3, 0, 216, 3, 0, 97, 3, 0,
00241 121, 3, 0, 141, 3, 0, 111, 3, 0, 127,
00242 3, 0, 99, 3, 0, 227, 3, 0, 0, 4,
00243 149, 98, 6, 95, 7, 0, 100, 0, 101, 0,
00244 103, 6, 104, 7, 0, 103, 6, 7, 0, 10,
00245 11, 149, 0, 11, 149, 0, 10, 102, 106, 0,
00246 10, 102, 0, 105, 0, 105, 104, 0, 108, 3,
00247 0, 119, 3, 0, 5, 107, 0, 225, 0, 225,
00248 26, 107, 0, 28, 18, 109, 159, 0, 18, 109,
00249 159, 0, 154, 0, 235, 0, 236, 0, 110, 0,
00250 225, 0, 21, 22, 24, 107, 25, 0, 22, 24,
00251 107, 25, 0, 113, 0, 112, 0, 10, 12, 149,
00252 0, 114, 6, 115, 7, 0, 114, 6, 7, 0,
00253 10, 12, 149, 23, 107, 117, 0, 10, 12, 149,
00254 23, 107, 0, 116, 0, 116, 115, 0, 119, 3,
00255 0, 120, 3, 0, 260, 3, 0, 5, 118, 0,
00256 225, 0, 225, 26, 118, 0, 205, 202, 206, 209,
00257 0, 205, 202, 206, 0, 27, 149, 8, 160, 9,
00258 0, 27, 149, 0, 13, 149, 122, 6, 124, 7,
00259 0, 13, 149, 6, 124, 7, 0, 13, 149, 6,
00260 7, 0, 13, 149, 122, 6, 7, 0, 5, 123,
00261 0, 225, 0, 225, 26, 123, 0, 125, 0, 125,
00262 124, 0, 126, 3, 0, 119, 3, 0, 14, 118,
00263 159, 0, 128, 0, 129, 0, 130, 6, 131, 7,
00264 0, 130, 6, 7, 0, 11, 149, 0, 11, 149,
00265 133, 135, 0, 11, 149, 133, 0, 11, 149, 135,
00266 0, 132, 0, 132, 131, 0, 108, 3, 0, 138,
00267 3, 0, 140, 3, 0, 5, 134, 0, 225, 0,
00268 15, 107, 0, 22, 24, 134, 25, 0, 16, 146,
00269 0, 17, 159, 19, 139, 137, 0, 17, 159, 19,
00270 139, 0, 134, 0, 136, 0, 22, 8, 159, 9,
00271 0, 142, 6, 143, 7, 0, 142, 6, 7, 0,
00272 12, 149, 23, 134, 145, 147, 0, 12, 149, 23,
00273 134, 145, 0, 12, 149, 23, 134, 147, 0, 12,
00274 149, 23, 134, 0, 144, 0, 144, 143, 0, 120,
00275 3, 0, 148, 3, 0, 5, 146, 0, 225, 0,
00276 15, 118, 0, 20, 27, 149, 0, 20, 27, 22,
00277 0, 45, 0, 46, 151, 0, 178, 0, 182, 0,
00278 240, 0, 47, 159, 0, 215, 0, 152, 157, 0,
00279 153, 0, 156, 0, 154, 0, 155, 0, 225, 0,
00280 162, 0, 163, 0, 172, 0, 173, 0, 174, 0,
00281 175, 0, 176, 0, 177, 0, 214, 0, 242, 0,
00282 235, 0, 236, 0, 212, 0, 178, 0, 182, 0,
00283 240, 0, 158, 0, 158, 26, 157, 0, 159, 0,
00284 161, 0, 149, 0, 159, 0, 160, 26, 159, 0,
00285 237, 0, 39, 0, 40, 0, 41, 40, 0, 164,
00286 0, 168, 0, 165, 0, 166, 0, 167, 0, 42,
00287 0, 41, 0, 41, 41, 0, 169, 0, 170, 0,
00288 171, 0, 43, 42, 0, 43, 41, 0, 43, 41,
00289 41, 0, 44, 0, 32, 0, 33, 0, 34, 0,
00290 35, 0, 36, 0, 0, 37, 149, 179, 6, 180,
00291 7, 0, 181, 0, 181, 180, 0, 152, 157, 3,
00292 0, 29, 149, 30, 8, 183, 9, 6, 184, 7,
00293 0, 163, 0, 172, 0, 174, 0, 240, 0, 225,
00294 0, 185, 0, 185, 184, 0, 186, 187, 3, 0,
00295 31, 190, 5, 0, 38, 5, 0, 31, 190, 5,
00296 186, 0, 38, 5, 186, 0, 152, 158, 0, 59,
00297 189, 149, 60, 190, 0, 163, 0, 172, 0, 173,
00298 0, 174, 0, 162, 0, 235, 0, 236, 0, 213,
00299 0, 225, 0, 175, 0, 191, 0, 192, 0, 191,
00300 61, 192, 0, 193, 0, 192, 50, 193, 0, 194,
00301 0, 193, 51, 194, 0, 195, 0, 194, 53, 195,
00302 0, 194, 54, 195, 0, 196, 0, 195, 48, 196,
00303 0, 195, 49, 196, 0, 197, 0, 196, 52, 197,
00304 0, 196, 55, 197, 0, 196, 56, 197, 0, 198,
00305 199, 0, 199, 0, 49, 0, 48, 0, 57, 0,
00306 225, 0, 243, 0, 8, 190, 9, 0, 70, 149,
00307 0, 200, 6, 180, 7, 0, 200, 6, 7, 0,
00308 149, 0, 204, 205, 202, 206, 209, 210, 0, 205,
00309 202, 206, 209, 210, 0, 204, 205, 202, 206, 209,
00310 0, 204, 205, 202, 206, 210, 0, 205, 202, 206,
00311 209, 0, 205, 202, 206, 210, 0, 205, 202, 206,
00312 0, 58, 0, 211, 0, 62, 0, 8, 207, 9,
00313 0, 8, 9, 0, 208, 211, 159, 0, 208, 211,
00314 159, 26, 207, 0, 63, 0, 64, 0, 65, 0,
00315 66, 8, 225, 9, 0, 66, 8, 225, 26, 226,
00316 9, 0, 67, 8, 249, 9, 0, 154, 0, 235,
00317 0, 236, 0, 225, 0, 68, 24, 259, 26, 259,
00318 25, 0, 68, 0, 69, 0, 37, 149, 0, 29,
00319 149, 0, 217, 0, 218, 0, 220, 6, 221, 7,
00320 0, 220, 6, 7, 0, 10, 71, 149, 0, 72,
00321 71, 149, 0, 71, 149, 0, 71, 149, 0, 10,
00322 219, 0, 72, 219, 0, 219, 0, 10, 219, 223,
00323 0, 72, 219, 223, 0, 219, 223, 0, 222, 0,
00324 222, 221, 0, 150, 3, 0, 188, 3, 0, 201,
00325 3, 0, 239, 3, 0, 203, 3, 0, 5, 224,
00326 0, 225, 0, 225, 26, 224, 0, 149, 73, 225,
00327 0, 149, 0, 149, 26, 226, 0, 149, 0, 232,
00328 0, 231, 0, 230, 0, 229, 0, 74, 149, 0,
00329 10, 228, 0, 228, 0, 228, 152, 0, 10, 228,
00330 234, 6, 222, 7, 0, 10, 228, 6, 222, 7,
00331 0, 233, 6, 253, 7, 0, 75, 228, 234, 0,
00332 228, 234, 0, 75, 228, 0, 5, 76, 252, 77,
00333 224, 0, 5, 252, 77, 224, 0, 77, 224, 0,
00334 5, 76, 252, 0, 5, 252, 0, 78, 24, 259,
00335 25, 0, 78, 0, 79, 24, 259, 25, 0, 79,
00336 0, 149, 238, 0, 81, 259, 82, 0, 28, 80,
00337 211, 159, 0, 80, 211, 159, 0, 83, 149, 6,
00338 241, 7, 0, 149, 0, 149, 26, 241, 0, 84,
00339 24, 153, 26, 259, 25, 0, 84, 24, 153, 25,
00340 0, 245, 0, 249, 0, 250, 0, 247, 0, 248,
00341 0, 251, 0, 246, 0, 244, 0, 85, 0, 86,
00342 0, 87, 0, 92, 0, 93, 0, 32, 0, 78,
00343 0, 79, 0, 94, 0, 225, 0, 225, 26, 252,
00344 0, 222, 0, 254, 0, 255, 0, 90, 152, 157,
00345 3, 0, 89, 152, 157, 3, 0, 91, 149, 8,
00346 256, 9, 3, 0, 91, 149, 8, 9, 3, 0,
00347 257, 0, 257, 26, 256, 0, 258, 211, 159, 0,
00348 63, 0, 190, 0, 91, 149, 261, 0, 8, 159,
00349 9, 0, 8, 9, 0
00350 };
00351
00352 #endif
00353
00354 #if YYDEBUG
00355
00356 static const short yyrline[] =
00357 {
00358 0, 78, 80, 85, 87, 90, 93, 96, 99, 102,
00359 105, 108, 111, 114, 119, 119, 131, 134, 139, 141,
00360 146, 150, 160, 163, 168, 171, 176, 179, 184, 189,
00361 192, 197, 199, 204, 206, 209, 212, 215, 220, 223,
00362 228, 230, 235, 240, 243, 248, 251, 256, 259, 264,
00363 267, 270, 275, 280, 283, 288, 291, 297, 299, 304,
00364 306, 309, 312, 317, 321, 323, 328, 330, 335, 337,
00365 342, 346, 348, 353, 355, 360, 364, 366, 369, 374,
00366 376, 381, 383, 386, 391, 395, 399, 403, 407, 411,
00367 413, 418, 421, 426, 430, 432, 437, 439, 442, 445,
00368 450, 452, 457, 459, 464, 468, 472, 476, 478, 483,
00369 487, 489, 492, 495, 498, 501, 506, 510, 512, 517,
00370 519, 522, 527, 529, 532, 535, 538, 541, 544, 547,
00371 550, 555, 557, 560, 563, 568, 570, 573, 578, 580,
00372 585, 587, 592, 596, 598, 603, 607, 609, 612, 617,
00373 619, 624, 626, 629, 634, 638, 642, 646, 648, 651,
00374 656, 660, 664, 668, 672, 676, 680, 684, 688, 692,
00375 692, 705, 707, 712, 716, 720, 722, 725, 728, 731,
00376 736, 738, 743, 747, 749, 752, 755, 760, 764, 768,
00377 770, 773, 776, 779, 782, 785, 788, 791, 794, 799,
00378 803, 805, 810, 812, 817, 819, 824, 826, 829, 834,
00379 836, 839, 844, 846, 849, 852, 857, 859, 864, 866,
00380 869, 874, 876, 879, 884, 893, 898, 906, 917, 920,
00381 924, 928, 932, 936, 940, 946, 950, 952, 957, 959,
00382 964, 966, 971, 973, 976, 981, 983, 988, 992, 994,
00383 997, 1000, 1005, 1009, 1013, 1017, 1019, 1024, 1026, 1031,
00384 1036, 1044, 1046, 1049, 1054, 1064, 1066, 1069, 1072, 1075,
00385 1078, 1083, 1085, 1090, 1092, 1095, 1098, 1101, 1106, 1111,
00386 1113, 1118, 1120, 1125, 1127, 1132, 1134, 1137, 1140, 1145,
00387 1149, 1151, 1156, 1160, 1162, 1167, 1171, 1173, 1176, 1181,
00388 1183, 1186, 1189, 1192, 1198, 1200, 1205, 1207, 1212, 1216,
00389 1220, 1222, 1227, 1231, 1233, 1238, 1240, 1245, 1247, 1250,
00390 1253, 1256, 1259, 1262, 1265, 1270, 1272, 1277, 1281, 1285,
00391 1289, 1293, 1297, 1301, 1305, 1307, 1312, 1314, 1317, 1322,
00392 1324, 1329, 1331, 1336, 1338, 1343, 1347, 1351, 1355, 1359,
00393 1361
00394 };
00395 #endif
00396
00397
00398 #if (YYDEBUG) || defined YYERROR_VERBOSE
00399
00400
00401 static const char *const yytname[] =
00402 {
00403 "$", "error", "$undefined.", "TAO_PSDL_SEMI", "TAO_PSDL_MODULE",
00404 "TAO_PSDL_COLON", "TAO_PSDL_OPEN_CURLY_BRACE",
00405 "TAO_PSDL_CLOSE_CURLY_BRACE", "TAO_PSDL_OPEN_BRACE",
00406 "TAO_PSDL_CLOSE_BRACE", "TAO_PSDL_ABSTRACT", "TAO_PSDL_STORAGETYPE",
00407 "TAO_PSDL_STORAGEHOME", "TAO_PSDL_CATALOG", "TAO_PSDL_PROVIDES",
00408 "TAO_PSDL_IMPLEMENTS", "TAO_PSDL_SCOPE", "TAO_PSDL_STORES",
00409 "TAO_PSDL_STATE", "TAO_PSDL_AS", "TAO_PSDL_PRIMARY", "TAO_PSDL_STRONG",
00410 "TAO_PSDL_REF", "TAO_PSDL_OF", "TAO_PSDL_OPEN_ANGULAR_BRACE",
00411 "TAO_PSDL_CLOSE_ANGULAR_BRACE", "TAO_PSDL_COMMA", "TAO_PSDL_KEY",
00412 "TAO_PSDL_READONLY", "TAO_PSDL_UNION", "TAO_PSDL_SWITCH",
00413 "TAO_PSDL_CASE", "TAO_PSDL_WCHAR", "TAO_PSDL_BOOLEAN", "TAO_PSDL_OCTET",
00414 "TAO_PSDL_ANY", "TAO_PSDL_OBJECT", "TAO_PSDL_STRUCT",
00415 "TAO_PSDL_DEFAULT", "TAO_PSDL_FLOAT", "TAO_PSDL_DOUBLE",
00416 "TAO_PSDL_LONG", "TAO_PSDL_SHORT", "TAO_PSDL_UNSIGNED", "TAO_PSDL_CHAR",
00417 "TAO_PSDL_IDENT", "TAO_PSDL_TYPEDEF", "TAO_PSDL_NATIVE",
00418 "TAO_PSDL_PLUS", "TAO_PSDL_MINUS", "TAO_PSDL_XOR", "TAO_PSDL_AND",
00419 "TAO_PSDL_MULT", "TAO_PSDL_RIGHT_SHIFT", "TAO_PSDL_LEFT_SHIFT",
00420 "TAO_PSDL_DIV", "TAO_PSDL_PERCENT", "TAO_PSDL_TILDA", "TAO_PSDL_ONEWAY",
00421 "TAO_PSDL_CONST", "TAO_PSDL_EQUAL", "TAO_PSDL_OR", "TAO_PSDL_VOID",
00422 "TAO_PSDL_IN", "TAO_PSDL_OUT", "TAO_PSDL_INOUT", "TAO_PSDL_RAISES",
00423 "TAO_PSDL_CONTEXT", "TAO_PSDL_FIXED", "TAO_PSDL_VALUEBASE",
00424 "TAO_PSDL_EXCEPTION", "TAO_PSDL_INTERFACE", "TAO_PSDL_LOCAL",
00425 "TAO_PSDL_DOUBLE_COLON", "TAO_PSDL_VALUETYPE", "TAO_PSDL_CUSTOM",
00426 "TAO_PSDL_TRUNCATABLE", "TAO_PSDL_SUPPORTS", "TAO_PSDL_STRING",
00427 "TAO_PSDL_WSTRING", "TAO_PSDL_ATTRIBUTE", "TAO_PSDL_OPEN_SQUARE_BRACE",
00428 "TAO_PSDL_CLOSE_SQUARE_BRACE", "TAO_PSDL_ENUM", "TAO_PSDL_SEQUENCE",
00429 "TAO_PSDL_TRUE", "TAO_PSDL_FALSE", "TAO_PSDL_INTEGER",
00430 "TAO_PSDL_FLOATING", "TAO_PSDL_PRIVATE", "TAO_PSDL_PUBLIC",
00431 "TAO_PSDL_FACTORY", "TAO_PSDL_FLOATING_PT", "TAO_PSDL_CHAR_LITERAL",
00432 "TAO_PSDL_FIXED_PT", "psdl_specification", "psdl_definition",
00433 "psdl_module", "@1", "abstract_storagetype", "abstract_storagetype_dcl",
00434 "abstract_storagetype_fwd_dcl", "storagetype_identifier",
00435 "abstract_storagetype_header", "abstract_storagetype_body",
00436 "abstract_storagetype_member", "abstract_storagetype_inh_spec",
00437 "abstract_storagetype_name", "psdl_state_dcl", "psdl_state_type_spec",
00438 "abstract_storagetype_ref_type", "abstract_storagehome",
00439 "abstract_storagehome_fwd_dcl", "abstract_storagehome_dcl",
00440 "abstract_storagehome_header", "abstract_storagehome_body",
00441 "abstract_storagehome_member", "abstract_storagehome_inh_spec",
00442 "abstract_storagehome_name", "local_op_dcl", "key_dcl", "catalog",
00443 "catalog_inh_spec", "catalog_name", "catalog_body", "catalog_member",
00444 "provides_dcl", "storagetype", "storagetype_dcl", "storagetype_fwd_dcl",
00445 "storagetype_header", "storagetype_body", "storagetype_member",
00446 "storagetype_inh_spec", "storagetype_name", "storagetype_impl_spec",
00447 "storagetype_ref_type", "storagehome_scope", "store_directive",
00448 "psdl_concrete_state_type", "ref_rep_directive", "storagehome",
00449 "storagehome_header", "storagehome_body", "storagehome_member",
00450 "storagehome_inh_spec", "storagehome_name", "storagehome_impl_spec",
00451 "primary_key_dcl", "identifier", "type_dcl", "type_declarator",
00452 "type_spec", "simple_type_spec", "base_type_spec", "template_type_spec",
00453 "constr_type_spec", "declarators", "declarator", "simple_declarator",
00454 "simple_declarator_list", "complex_declarator", "floating_pt_type",
00455 "integer_type", "signed_int", "signed_short_int", "signed_long_int",
00456 "signed_longlong_int", "unsigned_int", "unsigned_short_int",
00457 "unsigned_long_int", "unsigned_longlong_int", "char_type",
00458 "wide_char_type", "boolean_type", "octet_type", "any_type",
00459 "object_type", "struct_type", "@2", "member_list", "member",
00460 "union_type", "switch_type_spec", "switch_body", "case", "case_label",
00461 "element_spec", "const_dcl", "const_type", "const_exp", "or_expr",
00462 "xor_expr", "and_expr", "shift_expr", "add_expr", "mult_expr",
00463 "unary_expr", "unary_operator", "primary_expr", "except_header",
00464 "except_dcl", "op_name", "op_dcl", "op_attribute", "op_type_spec",
00465 "parameter_dcls", "param_dcl", "param_attribute", "raises_expr",
00466 "context_expr", "param_type_spec", "fixed_pt_type",
00467 "fixed_pt_const_type", "value_base_type", "constr_forward_decl",
00468 "interface", "interface_dcl", "forward_dcl", "interface_identifier",
00469 "interface_header", "interface_body", "export",
00470 "interface_inheritance_spec", "interface_name", "scoped_name",
00471 "comma_scoped_name", "value", "value_common_base", "value_forward_dcl",
00472 "value_box_dcl", "value_abs_dcl", "value_dcl", "value_header",
00473 "value_inheritance_spec", "string_type", "wide_string_type",
00474 "array_declarator", "fixed_array_size", "attr_dcl", "enum_type",
00475 "enumerator", "sequence_type", "literal", "boolean_literal",
00476 "integer_literal", "floating_pt_literal", "character_literal",
00477 "wide_character_literal", "string_literal", "wide_string_literal",
00478 "fixed_pt_literal", "value_name", "value_element", "state_member",
00479 "init_dcl", "init_param_decls", "init_param_decl",
00480 "init_param_attribute", "positive_int_const", "factory_dcl",
00481 "factory_parameters", 0
00482 };
00483 #endif
00484
00485
00486 static const short yyr1[] =
00487 {
00488 0, 95, 95, 96, 96, 96, 96, 96, 96, 96,
00489 96, 96, 96, 96, 98, 97, 99, 99, 100, 100,
00490 101, 102, 103, 103, 104, 104, 105, 105, 106, 107,
00491 107, 108, 108, 109, 109, 109, 109, 109, 110, 110,
00492 111, 111, 112, 113, 113, 114, 114, 115, 115, 116,
00493 116, 116, 117, 118, 118, 119, 119, 120, 120, 121,
00494 121, 121, 121, 122, 123, 123, 124, 124, 125, 125,
00495 126, 127, 127, 128, 128, 129, 130, 130, 130, 131,
00496 131, 132, 132, 132, 133, 134, 135, 136, 137, 138,
00497 138, 139, 139, 140, 141, 141, 142, 142, 142, 142,
00498 143, 143, 144, 144, 145, 146, 147, 148, 148, 149,
00499 150, 150, 150, 150, 150, 150, 151, 152, 152, 153,
00500 153, 153, 154, 154, 154, 154, 154, 154, 154, 154,
00501 154, 155, 155, 155, 155, 156, 156, 156, 157, 157,
00502 158, 158, 159, 160, 160, 161, 162, 162, 162, 163,
00503 163, 164, 164, 164, 165, 166, 167, 168, 168, 168,
00504 169, 170, 171, 172, 173, 174, 175, 176, 177, 179,
00505 178, 180, 180, 181, 182, 183, 183, 183, 183, 183,
00506 184, 184, 185, 186, 186, 186, 186, 187, 188, 189,
00507 189, 189, 189, 189, 189, 189, 189, 189, 189, 190,
00508 191, 191, 192, 192, 193, 193, 194, 194, 194, 195,
00509 195, 195, 196, 196, 196, 196, 197, 197, 198, 198,
00510 198, 199, 199, 199, 200, 201, 201, 202, 203, 203,
00511 203, 203, 203, 203, 203, 204, 205, 205, 206, 206,
00512 207, 207, 208, 208, 208, 209, 209, 210, 211, 211,
00513 211, 211, 212, 213, 214, 215, 215, 216, 216, 217,
00514 217, 218, 218, 218, 219, 220, 220, 220, 220, 220,
00515 220, 221, 221, 222, 222, 222, 222, 222, 223, 224,
00516 224, 225, 225, 226, 226, 227, 227, 227, 227, 228,
00517 229, 229, 230, 231, 231, 232, 233, 233, 233, 234,
00518 234, 234, 234, 234, 235, 235, 236, 236, 237, 238,
00519 239, 239, 240, 241, 241, 242, 242, 243, 243, 243,
00520 243, 243, 243, 243, 243, 244, 244, 245, 246, 247,
00521 248, 249, 250, 251, 252, 252, 253, 253, 253, 254,
00522 254, 255, 255, 256, 256, 257, 258, 259, 260, 261,
00523 261
00524 };
00525
00526
00527 static const short yyr2[] =
00528 {
00529 0, 1, 2, 2, 2, 2, 2, 2, 2, 2,
00530 2, 2, 2, 2, 0, 6, 1, 1, 4, 3,
00531 3, 2, 3, 2, 1, 2, 2, 2, 2, 1,
00532 3, 4, 3, 1, 1, 1, 1, 1, 5, 4,
00533 1, 1, 3, 4, 3, 6, 5, 1, 2, 2,
00534 2, 2, 2, 1, 3, 4, 3, 5, 2, 6,
00535 5, 4, 5, 2, 1, 3, 1, 2, 2, 2,
00536 3, 1, 1, 4, 3, 2, 4, 3, 3, 1,
00537 2, 2, 2, 2, 2, 1, 2, 4, 2, 5,
00538 4, 1, 1, 4, 4, 3, 6, 5, 5, 4,
00539 1, 2, 2, 2, 2, 1, 2, 3, 3, 1,
00540 2, 1, 1, 1, 2, 1, 2, 1, 1, 1,
00541 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00542 1, 1, 1, 1, 1, 1, 1, 1, 1, 3,
00543 1, 1, 1, 1, 3, 1, 1, 1, 2, 1,
00544 1, 1, 1, 1, 1, 1, 2, 1, 1, 1,
00545 2, 2, 3, 1, 1, 1, 1, 1, 1, 0,
00546 6, 1, 2, 3, 9, 1, 1, 1, 1, 1,
00547 1, 2, 3, 3, 2, 4, 3, 2, 5, 1,
00548 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00549 1, 3, 1, 3, 1, 3, 1, 3, 3, 1,
00550 3, 3, 1, 3, 3, 3, 2, 1, 1, 1,
00551 1, 1, 1, 3, 2, 4, 3, 1, 6, 5,
00552 5, 5, 4, 4, 3, 1, 1, 1, 3, 2,
00553 3, 5, 1, 1, 1, 4, 6, 4, 1, 1,
00554 1, 1, 6, 1, 1, 2, 2, 1, 1, 4,
00555 3, 3, 3, 2, 2, 2, 2, 1, 3, 3,
00556 2, 1, 2, 2, 2, 2, 2, 2, 2, 1,
00557 3, 3, 1, 3, 1, 1, 1, 1, 1, 2,
00558 2, 1, 2, 6, 5, 4, 3, 2, 2, 5,
00559 4, 2, 3, 2, 4, 1, 4, 1, 2, 3,
00560 4, 3, 5, 1, 3, 6, 4, 1, 1, 1,
00561 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00562 1, 1, 1, 1, 1, 3, 1, 1, 1, 4,
00563 4, 6, 5, 1, 3, 3, 1, 1, 3, 3,
00564 2
00565 };
00566
00567
00568
00569
00570 static const short yydefact[] =
00571 {
00572 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00573 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
00574 0, 16, 17, 0, 0, 41, 40, 0, 0, 0,
00575 71, 72, 0, 0, 0, 0, 111, 112, 0, 0,
00576 0, 115, 0, 257, 258, 267, 0, 0, 291, 288,
00577 287, 286, 285, 0, 113, 109, 14, 0, 0, 0,
00578 23, 265, 290, 75, 0, 0, 256, 169, 0, 164,
00579 165, 166, 167, 168, 0, 146, 147, 155, 154, 0,
00580 163, 0, 254, 305, 307, 0, 282, 110, 0, 117,
00581 119, 120, 118, 122, 123, 149, 151, 152, 153, 150,
00582 157, 158, 159, 124, 125, 126, 127, 128, 129, 135,
00583 136, 134, 130, 121, 132, 133, 137, 131, 142, 114,
00584 253, 193, 189, 190, 191, 192, 198, 0, 196, 197,
00585 194, 195, 224, 264, 0, 266, 289, 298, 0, 2,
00586 7, 12, 0, 10, 0, 8, 11, 0, 9, 0,
00587 3, 4, 0, 5, 6, 0, 270, 0, 13, 0,
00588 0, 292, 297, 0, 0, 21, 42, 264, 0, 22,
00589 268, 0, 0, 0, 0, 77, 78, 0, 0, 0,
00590 0, 0, 0, 0, 169, 148, 156, 161, 160, 0,
00591 0, 0, 0, 0, 142, 116, 138, 140, 141, 145,
00592 0, 264, 269, 296, 0, 19, 0, 0, 237, 0,
00593 24, 0, 0, 248, 0, 236, 251, 249, 250, 44,
00594 0, 0, 0, 47, 0, 0, 0, 74, 0, 0,
00595 0, 0, 79, 0, 0, 95, 0, 0, 0, 100,
00596 0, 226, 0, 0, 171, 278, 279, 260, 0, 235,
00597 0, 0, 0, 0, 0, 0, 0, 0, 271, 0,
00598 0, 334, 303, 301, 0, 0, 0, 336, 0, 337,
00599 338, 0, 0, 28, 29, 0, 0, 84, 85, 86,
00600 76, 99, 63, 64, 61, 0, 0, 0, 66, 0,
00601 0, 0, 0, 162, 0, 330, 219, 218, 220, 331,
00602 332, 325, 326, 327, 328, 329, 333, 347, 199, 200,
00603 202, 204, 206, 209, 212, 0, 217, 221, 222, 324,
00604 317, 323, 320, 321, 318, 319, 322, 0, 0, 0,
00605 0, 281, 0, 308, 0, 0, 313, 0, 0, 0,
00606 0, 36, 33, 37, 34, 35, 0, 18, 25, 26,
00607 27, 227, 0, 58, 0, 43, 48, 49, 50, 51,
00608 0, 0, 81, 73, 80, 82, 83, 0, 102, 94,
00609 101, 103, 0, 225, 172, 0, 0, 0, 273, 274,
00610 275, 277, 0, 0, 259, 272, 276, 302, 0, 0,
00611 0, 0, 0, 295, 0, 46, 0, 294, 0, 0,
00612 0, 97, 98, 0, 0, 53, 69, 60, 67, 68,
00613 62, 0, 155, 175, 176, 177, 0, 179, 178, 0,
00614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00615 0, 216, 0, 304, 306, 316, 0, 0, 139, 188,
00616 0, 312, 0, 0, 32, 0, 0, 56, 0, 0,
00617 348, 0, 0, 108, 107, 173, 280, 0, 311, 0,
00618 234, 0, 335, 300, 0, 0, 0, 15, 0, 45,
00619 30, 293, 104, 105, 106, 96, 65, 70, 0, 59,
00620 0, 170, 223, 201, 203, 205, 207, 208, 210, 211,
00621 213, 214, 215, 0, 0, 309, 314, 0, 0, 31,
00622 239, 242, 243, 244, 0, 0, 0, 55, 143, 0,
00623 350, 0, 0, 91, 92, 90, 93, 310, 0, 0,
00624 232, 233, 299, 340, 339, 0, 346, 0, 343, 0,
00625 52, 54, 0, 252, 315, 0, 39, 238, 0, 0,
00626 57, 0, 349, 0, 0, 89, 230, 231, 0, 229,
00627 342, 0, 0, 0, 0, 0, 0, 180, 0, 38,
00628 240, 0, 144, 0, 88, 228, 0, 341, 344, 345,
00629 0, 184, 174, 181, 0, 0, 0, 245, 0, 87,
00630 247, 183, 186, 187, 182, 241, 284, 0, 185, 0,
00631 246, 283, 0, 0
00632 };
00633
00634 static const short yydefgoto[] =
00635 {
00636 17, 18, 19, 164, 20, 21, 22, 60, 23, 209,
00637 210, 169, 273, 211, 340, 341, 24, 25, 26, 27,
00638 222, 223, 469, 404, 286, 225, 28, 180, 282, 287,
00639 288, 289, 29, 30, 31, 32, 231, 232, 175, 277,
00640 176, 514, 545, 233, 515, 234, 33, 34, 238, 239,
00641 401, 472, 402, 240, 86, 251, 87, 242, 89, 213,
00642 91, 92, 195, 196, 197, 509, 198, 93, 94, 95,
00643 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
00644 106, 107, 108, 36, 182, 243, 244, 37, 416, 556,
00645 557, 558, 575, 252, 127, 307, 308, 309, 310, 311,
00646 312, 313, 314, 315, 316, 39, 253, 352, 254, 255,
00647 214, 447, 504, 505, 507, 521, 215, 111, 128, 112,
00648 41, 42, 43, 44, 45, 46, 257, 258, 156, 245,
00649 317, 587, 47, 48, 49, 50, 51, 52, 53, 162,
00650 217, 218, 199, 333, 259, 54, 337, 117, 318, 319,
00651 320, 321, 322, 323, 324, 325, 326, 262, 268, 269,
00652 270, 527, 528, 529, 327, 226, 450
00653 };
00654
00655 static const short yypact[] =
00656 {
00657 671, 66, 84, 66, 66, 66, 66, 66, 1142, 66,
00658 1060, 66, 66, 1, 66, 44, 66, 553,-32768, 87,
00659 129,-32768,-32768, 151, 175,-32768,-32768, 153, 209, 218,
00660 -32768,-32768, 234, 246, 244, 251,-32768,-32768, 254, 252,
00661 256,-32768, 258,-32768,-32768, 176, 257, 261, 608,-32768,
00662 -32768,-32768,-32768, 262,-32768,-32768,-32768, 66, 66, 66,
00663 268, 176, 43, 69, 259, 131, 245, 271, 66,-32768,
00664 -32768,-32768,-32768,-32768, 66,-32768,-32768, 152,-32768, 174,
00665 -32768, 255,-32768, 274, 282, 289, 243,-32768, 66,-32768,
00666 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
00667 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
00668 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
00669 -32768,-32768,-32768,-32768,-32768,-32768,-32768, 66,-32768,-32768,
00670 -32768,-32768,-32768, 314, 66, 176,-32768, 35, 317,-32768,
00671 -32768,-32768, 798,-32768, 442,-32768,-32768, 189,-32768, 146,
00672 -32768,-32768, 724,-32768,-32768, 66,-32768, 742,-32768, 18,
00673 66,-32768,-32768, 979, 319, 323, 297, 324, 66,-32768,
00674 -32768, 1090, 325, 66, 66, 315,-32768, 66, 66, 839,
00675 328, 330, 334, 245,-32768,-32768,-32768, 302,-32768, 372,
00676 372, 372, 1122, 66, 263,-32768, 320,-32768,-32768,-32768,
00677 285, 344,-32768,-32768, 66,-32768, 1042, 331,-32768, 341,
00678 1011, 347, 348,-32768, 66,-32768,-32768,-32768,-32768,-32768,
00679 66, 66, 345, 926, 350, 351, 352,-32768, 66, 349,
00680 353, 354, 208, 356, 359,-32768, 337, 362, 360, 89,
00681 367,-32768, 66, 364, 1142,-32768, 346,-32768, 293,-32768,
00682 1209, 371, 374, 376, 379, 1195, 66, 368, 1090, 380,
00683 66, 358, 308,-32768, 1142, 1142, 66,-32768, 385,-32768,
00684 -32768, 671, 66,-32768, 369, 387, 1090,-32768,-32768,-32768,
00685 -32768, 172,-32768, 370,-32768, 66, 383, 391, 895, 396,
00686 854, 105, 1142,-32768, 372,-32768,-32768,-32768,-32768,-32768,
00687 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 355, 357,
00688 363, 180, 190, 143,-32768, 36,-32768,-32768,-32768,-32768,
00689 -32768,-32768,-32768,-32768,-32768,-32768,-32768, 384, 377, 381,
00690 217,-32768, 372,-32768, 66, 372, 398, 402, 403, 404,
00691 66,-32768,-32768,-32768,-32768,-32768, 1042,-32768,-32768,-32768,
00692 -32768,-32768, 397, 418, 419,-32768,-32768,-32768,-32768,-32768,
00693 411, 66,-32768,-32768,-32768,-32768,-32768, 54,-32768,-32768,
00694 -32768,-32768, 428,-32768,-32768, 66, 1209, 66,-32768,-32768,
00695 -32768,-32768, 66, 397,-32768,-32768,-32768, 361, 66, 66,
00696 66, 66, 424,-32768, 651, 430, 66,-32768, 426, 66,
00697 66, 421,-32768, 66, 66, 414,-32768,-32768,-32768,-32768,
00698 -32768, 434, 401,-32768,-32768,-32768, 436,-32768,-32768, 439,
00699 443, 372, 372, 372, 372, 372, 372, 372, 372, 372,
00700 372,-32768, 372,-32768,-32768,-32768, 372, 378,-32768,-32768,
00701 66,-32768, 413, 66,-32768, 66, 80, 388, 66, 53,
00702 -32768, 58, 444,-32768,-32768,-32768,-32768, 66,-32768, 397,
00703 178, 66,-32768,-32768, 440, 459, 37,-32768, 66,-32768,
00704 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 66,-32768,
00705 461,-32768,-32768, 357, 363, 180, 190, 190, 143, 143,
00706 -32768,-32768,-32768, 445, 446,-32768,-32768, 66, 447,-32768,
00707 -32768,-32768,-32768,-32768, 470, 1209, 460,-32768,-32768, 115,
00708 -32768, 479, 465,-32768,-32768, 475,-32768,-32768, 178, 484,
00709 427,-32768,-32768,-32768,-32768, 490,-32768, 486, 471, 1209,
00710 -32768,-32768, 132,-32768,-32768, 473,-32768,-32768, 66, 66,
00711 -32768, 66,-32768, 66, 66,-32768, 427,-32768, 422,-32768,
00712 -32768, 493, 438, 66, 372, 494, 496, 132, 1142,-32768,
00713 481, 156,-32768, 483,-32768,-32768, 501,-32768,-32768,-32768,
00714 507, 132,-32768,-32768, 66, 510, 137,-32768, 66,-32768,
00715 -32768, 132,-32768,-32768,-32768,-32768, 489, 509,-32768, 66,
00716 -32768,-32768, 516,-32768
00717 };
00718
00719 static const short yypgoto[] =
00720 {
00721 248, -16,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 312,
00722 -32768,-32768, -165, -126, 177,-32768,-32768,-32768,-32768,-32768,
00723 301,-32768,-32768, -377, -83, -131,-32768,-32768, 122, -202,
00724 -32768,-32768,-32768,-32768,-32768,-32768, 294,-32768,-32768, -150,
00725 373,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 288,-32768,
00726 -32768, -15, 127,-32768, -1, 19,-32768, 29, 338, 77,
00727 -32768,-32768, -230, -43, 57,-32768,-32768, 522, 4,-32768,
00728 -32768,-32768,-32768,-32768,-32768,-32768,-32768, 21, 524, 31,
00729 525,-32768,-32768, 27,-32768, -190,-32768, 71,-32768, -21,
00730 -32768, -387,-32768, 25,-32768, -243,-32768, 117, 120, 116,
00731 -177, -174, -220,-32768, 228,-32768, 28, -240,-32768,-32768,
00732 -124, -354, -32,-32768, -408, -449, -200,-32768,-32768,-32768,
00733 -32768,-32768,-32768,-32768, 149,-32768, 287, -137, -18, -143,
00734 12, -42,-32768, 63,-32768,-32768,-32768,-32768,-32768, -24,
00735 22, 45,-32768,-32768,-32768, 16, 106,-32768,-32768,-32768,
00736 -32768,-32768,-32768,-32768, 2,-32768,-32768, -253,-32768,-32768,
00737 -32768, -3,-32768,-32768, -108,-32768,-32768
00738 };
00739
00740
00741 #define YYLAST 1288
00742
00743
00744 static const short yytable[] =
00745 {
00746 56, 139, 63, 64, 65, 66, 67, 387, 118, 279,
00747 132, 133, 372, 136, 122, 138, 383, 263, 237, 35,
00748 113, 230, 129, 474, 116, 38, 267, 281, 40, 460,
00749 114, 123, 130, 256, 275, 109, 35, 88, 172, 256,
00750 159, 125, 38, 170, 294, 40, 525, 256, 159, 171,
00751 377, 420, 520, 115, 374, 131, 165, 166, 167, 212,
00752 113, 224, 510, 55, 116, 62, 119, 183, 295, 547,
00753 114, 549, 134, 184, 173, 109, 453, 161, 137, 110,
00754 512, 55, 328, 329, 174, 90, 408, 194, 411, 500,
00755 140, 530, 439, 115, 260, 57, 58, 565, 55, 55,
00756 526, 531, 419, 55, 438, 518, 230, 395, 237, 236,
00757 546, 55, 160, 203, 299, 300, 220, 202, 14, 110,
00758 160, 301, 302, 303, 540, 90, 200, 212, 304, 305,
00759 306, 382, 141, 201, 256, 462, 178, 179, 70, 398,
00760 224, 541, 459, 501, 502, 503, 412, 78, 79, 80,
00761 55, 61, 256, 235, 216, 59, 216, 142, 14, 144,
00762 464, 465, 135, 554, 113, 577, 236, 246, 116, 216,
00763 555, 261, 246, 220, 114, 216, 457, 399, 143, 109,
00764 274, 155, 578, 216, 582, 278, 274, 400, 16, 278,
00765 283, 216, 185, 186, 588, 428, 227, 115, 429, 430,
00766 501, 502, 503, 336, 113, 331, 228, 206, 490, 491,
00767 492, 229, 145, 351, 114, 187, 188, 207, 343, 353,
00768 354, 146, 216, 110, 437, 228, 206, 118, 344, 90,
00769 229, 470, 456, 424, 425, 216, 207, 115, 426, 427,
00770 147, 194, 435, 436, 506, 519, 463, 486, 487, 148,
00771 149, 345, 488, 489, 150, 351, 113, 151, 152, 153,
00772 116, 154, 216, 157, 158, 392, 114, 216, 163, 90,
00773 216, 109, 261, 168, -255, 181, 113, 113, 498, 189,
00774 116, 116, 177, 342, 274, 360, 114, 114, 216, 115,
00775 35, 109, 109, 390, 391, 413, 38, 405, 190, 40,
00776 216, 513, 216, 417, 113, 538, 191, 418, 116, 115,
00777 115, 570, 414, 192, 114, 110, 193, -263, 522, 109,
00778 272, 90, 415, 204, 493, 271, -20, -261, 494, 553,
00779 174, 276, 535, 194, 290, 110, 110, 115, 291, 118,
00780 292, 90, 90, 293, 332, 335, 334, -262, 347, 346,
00781 349, 350, 355, 357, 358, 359, 362, 361, 343, 365,
00782 118, 363, 366, 110, 367, 368, 454, 369, 344, 90,
00783 371, 373, 375, 376, 378, 384, 118, 379, 139, 380,
00784 294, 351, 381, 386, 388, 389, 406, 246, 216, 194,
00785 194, 345, 393, 563, 397, 396, 403, 444, 407, 409,
00786 261, 246, 433, 118, 295, 446, 434, 422, 274, 441,
00787 432, 473, 405, 35, 423, 283, 421, 55, 452, 38,
00788 296, 297, 40, 342, 440, 442, 448, 449, 443, 298,
00789 451, 455, 466, 471, 458, 468, 400, 497, 461, 336,
00790 478, 479, 186, 523, 118, 480, 481, 118, 118, 219,
00791 299, 300, 482, 516, 506, 274, 118, 301, 302, 303,
00792 495, 477, 524, 278, 304, 305, 306, 532, 539, 220,
00793 533, 534, 536, 246, 69, 70, 71, 72, 73, 537,
00794 405, 75, 76, 77, 78, 79, 80, 55, 542, 543,
00795 405, 544, 548, 550, 519, 551, 567, 552, 559, 571,
00796 299, 526, 499, 572, 208, 508, 511, 576, 579, 274,
00797 580, 82, 581, 584, 517, 589, 593, 216, 590, 394,
00798 83, 84, 348, 445, 356, 476, 364, 370, 475, 564,
00799 330, 583, 121, 221, 124, 126, 573, 118, 483, 485,
00800 118, 216, 484, 431, 585, 385, 496, 591, 280, 568,
00801 566, 561, 118, 592, 0, 278, 473, 1, 0, 0,
00802 0, 0, 0, 2, 3, 4, 5, 0, 0, 0,
00803 113, 0, 0, 194, 116, 0, 0, 586, 0, 0,
00804 114, 0, 6, 0, 0, 109, 0, 574, 586, 0,
00805 7, 0, 0, 0, 0, 560, 0, 0, 562, 8,
00806 9, 0, 0, 115, 0, 0, 0, 0, 0, 0,
00807 569, 0, 10, 159, 0, 0, 0, 0, 0, 0,
00808 0, 0, 0, 11, 12, 13, 0, 14, 15, 110,
00809 0, 0, 0, 0, 0, 90, 16, 68, 0, 0,
00810 69, 70, 71, 72, 73, 74, 0, 75, 76, 77,
00811 78, 79, 80, 55, 0, 1, 0, 0, 467, 0,
00812 0, 2, 3, 4, 5, 0, 0, 0, 0, 0,
00813 0, 0, 0, 0, 0, 1, 81, 82, 0, 0,
00814 6, 2, 3, 4, 5, 160, 83, 84, 7, 0,
00815 0, 16, 85, 0, 0, 0, 0, 8, 9, 0,
00816 6, 0, 0, 0, 0, 0, 0, 0, 7, 0,
00817 10, 0, 0, 0, 0, 0, 0, 8, 9, 0,
00818 0, 11, 12, 13, 0, 14, 15, 0, 0, 0,
00819 10, 241, 0, 0, 16, 0, 0, 0, 0, 0,
00820 0, 11, 12, 13, 0, 14, 15, 0, 0, 247,
00821 0, 0, 0, 68, 16, 0, 69, 70, 71, 72,
00822 73, 74, 0, 75, 76, 77, 78, 79, 80, 55,
00823 248, 6, 0, 0, 69, 70, 71, 72, 73, 7,
00824 0, 75, 76, 77, 78, 79, 80, 55, 8, 9,
00825 0, 0, 81, 82, 0, 0, 0, 0, 0, 0,
00826 249, 10, 83, 84, 208, 205, 0, 16, 85, 0,
00827 0, 82, 11, 0, 0, 0, 206, 0, 0, 0,
00828 83, 84, 250, 0, 0, 16, 207, 0, 0, 0,
00829 69, 70, 71, 72, 73, 0, 0, 75, 76, 77,
00830 78, 79, 80, 55, 0, 0, 284, 0, 0, 0,
00831 0, 0, 0, 285, 0, 0, 0, 0, 0, 0,
00832 208, 410, 0, 0, 0, 0, 0, 82, 285, 0,
00833 0, 69, 70, 71, 72, 73, 83, 84, 75, 76,
00834 77, 78, 79, 80, 55, 0, 69, 70, 71, 72,
00835 73, 0, 0, 75, 76, 77, 78, 79, 80, 55,
00836 0, 208, 0, 0, 0, 0, 0, 0, 82, 285,
00837 0, 0, 0, 0, 0, 0, 208, 83, 84, 0,
00838 0, 0, 0, 82, 0, 0, 0, 69, 70, 71,
00839 72, 73, 83, 84, 75, 76, 77, 78, 79, 80,
00840 55, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00841 0, 0, 0, 220, 0, 0, 0, 208, 69, 70,
00842 71, 72, 73, 0, 82, 75, 76, 77, 78, 79,
00843 80, 55, 0, 83, 84, 0, 0, 0, 0, 0,
00844 0, 0, 0, 0, 0, 0, 0, 0, 208, 0,
00845 0, 0, 0, 0, 0, 82, 0, 0, 0, 0,
00846 0, 0, 0, 0, 83, 84, 0, 248, 6, 0,
00847 0, 69, 70, 71, 72, 73, 7, 221, 75, 76,
00848 77, 78, 79, 80, 55, 8, 9, 0, 0, 206,
00849 0, 0, 0, 0, 0, 0, 0, 249, 10, 207,
00850 0, 208, 0, 69, 70, 71, 72, 73, 82, 11,
00851 75, 76, 77, 78, 79, 80, 55, 83, 84, 250,
00852 0, 0, 16, 338, 339, 0, 0, 0, 264, 265,
00853 266, 0, 0, 208, 69, 70, 71, 72, 73, 0,
00854 82, 75, 76, 77, 78, 79, 80, 55, 0, 83,
00855 84, 0, 69, 70, 71, 0, 0, 0, 0, 75,
00856 76, 77, 78, 79, 80, 55, 0, 0, 0, 0,
00857 0, 82, 0, 0, 0, 0, 0, 0, 248, 6,
00858 83, 84, 69, 70, 71, 72, 73, 7, 120, 75,
00859 76, 77, 78, 79, 80, 55, 8, 9, 83, 84,
00860 0, 0, 0, 0, 0, 0, 0, 0, 249, 10,
00861 0, 0, 208, 0, 69, 70, 71, 72, 73, 82,
00862 11, 75, 76, 77, 78, 79, 80, 55, 83, 84,
00863 250, 68, 0, 16, 69, 70, 71, 72, 73, 74,
00864 0, 75, 76, 77, 78, 79, 80, 55, 0, 0,
00865 81, 82, 0, 0, 0, 0, 0, 0, 0, 0,
00866 83, 84, 0, 0, 0, 0, 85, 0, 0, 0,
00867 81, 82, 0, 0, 0, 0, 0, 0, 0, 0,
00868 83, 84, 0, 0, 0, 16, 85, 69, 70, 71,
00869 72, 73, 0, 0, 75, 76, 77, 78, 79, 80,
00870 55, 69, 70, 71, 72, 73, 0, 0, 75, 76,
00871 77, 78, 79, 80, 55, 0, 0, 208, 0, 0,
00872 0, 0, 0, 0, 82, 0, 0, 0, 0, 0,
00873 0, 0, 0, 83, 84, 0, 0, 0, 82, 0,
00874 0, 0, 0, 0, 0, 0, 0, 83, 84
00875 };
00876
00877 static const short yycheck[] =
00878 {
00879 1, 17, 3, 4, 5, 6, 7, 260, 9, 174,
00880 11, 12, 242, 14, 10, 16, 256, 160, 149, 0,
00881 8, 147, 10, 400, 8, 0, 163, 177, 0, 383,
00882 8, 10, 10, 157, 171, 8, 17, 8, 62, 163,
00883 5, 10, 17, 61, 8, 17, 9, 171, 5, 6,
00884 250, 294, 460, 8, 244, 10, 57, 58, 59, 142,
00885 48, 144, 9, 45, 48, 2, 9, 68, 32, 518,
00886 48, 520, 71, 74, 5, 48, 22, 48, 15, 8,
00887 22, 45, 190, 191, 15, 8, 288, 88, 290, 9,
00888 3, 468, 335, 48, 76, 11, 12, 546, 45, 45,
00889 63, 478, 292, 45, 334, 459, 232, 272, 239, 20,
00890 518, 45, 77, 137, 78, 79, 27, 135, 74, 48,
00891 77, 85, 86, 87, 9, 48, 127, 210, 92, 93,
00892 94, 255, 3, 134, 258, 388, 5, 6, 33, 276,
00893 223, 26, 382, 63, 64, 65, 41, 42, 43, 44,
00894 45, 2, 276, 7, 142, 71, 144, 6, 74, 6,
00895 390, 391, 13, 31, 152, 9, 20, 155, 152, 157,
00896 38, 159, 160, 27, 152, 163, 376, 5, 3, 152,
00897 168, 5, 26, 171, 571, 173, 174, 15, 83, 177,
00898 178, 179, 40, 41, 581, 52, 7, 152, 55, 56,
00899 63, 64, 65, 204, 192, 193, 17, 18, 428, 429,
00900 430, 22, 3, 214, 192, 41, 42, 28, 206, 220,
00901 221, 3, 210, 152, 332, 17, 18, 228, 206, 152,
00902 22, 396, 375, 53, 54, 223, 28, 192, 48, 49,
00903 6, 242, 25, 26, 66, 67, 389, 424, 425, 3,
00904 6, 206, 426, 427, 3, 256, 244, 3, 6, 3,
00905 244, 3, 250, 6, 3, 266, 244, 255, 6, 192,
00906 258, 244, 260, 5, 3, 30, 264, 265, 443, 24,
00907 264, 265, 23, 206, 272, 228, 264, 265, 276, 244,
00908 271, 264, 265, 264, 265, 291, 271, 285, 24, 271,
00909 288, 451, 290, 291, 292, 505, 24, 291, 292, 264,
00910 265, 554, 291, 24, 292, 244, 73, 3, 461, 292,
00911 23, 244, 291, 6, 432, 6, 3, 3, 436, 529,
00912 15, 6, 497, 334, 6, 264, 265, 292, 8, 340,
00913 6, 264, 265, 41, 81, 60, 26, 3, 7, 18,
00914 3, 3, 7, 3, 3, 3, 3, 8, 346, 3,
00915 361, 7, 3, 292, 27, 3, 367, 7, 346, 292,
00916 3, 7, 26, 80, 3, 7, 377, 3, 394, 3,
00917 8, 382, 3, 3, 26, 77, 3, 375, 376, 390,
00918 391, 346, 7, 543, 7, 26, 26, 340, 7, 3,
00919 388, 389, 25, 404, 32, 8, 25, 50, 396, 7,
00920 26, 399, 400, 394, 51, 403, 61, 45, 361, 394,
00921 48, 49, 394, 346, 26, 22, 8, 8, 24, 57,
00922 19, 3, 8, 7, 377, 5, 15, 24, 77, 440,
00923 26, 7, 41, 3, 445, 9, 7, 448, 449, 7,
00924 78, 79, 9, 9, 66, 443, 457, 85, 86, 87,
00925 82, 404, 3, 451, 92, 93, 94, 6, 8, 27,
00926 25, 25, 25, 461, 32, 33, 34, 35, 36, 9,
00927 468, 39, 40, 41, 42, 43, 44, 45, 9, 24,
00928 478, 16, 8, 3, 67, 9, 3, 26, 25, 5,
00929 78, 63, 445, 7, 62, 448, 449, 26, 25, 497,
00930 9, 69, 5, 3, 457, 26, 0, 505, 9, 271,
00931 78, 79, 210, 346, 223, 403, 232, 239, 401, 544,
00932 192, 574, 10, 91, 10, 10, 557, 538, 421, 423,
00933 541, 529, 422, 315, 576, 258, 440, 589, 175, 552,
00934 548, 539, 553, 0, -1, 543, 544, 4, -1, -1,
00935 -1, -1, -1, 10, 11, 12, 13, -1, -1, -1,
00936 558, -1, -1, 574, 558, -1, -1, 578, -1, -1,
00937 558, -1, 29, -1, -1, 558, -1, 558, 589, -1,
00938 37, -1, -1, -1, -1, 538, -1, -1, 541, 46,
00939 47, -1, -1, 558, -1, -1, -1, -1, -1, -1,
00940 553, -1, 59, 5, -1, -1, -1, -1, -1, -1,
00941 -1, -1, -1, 70, 71, 72, -1, 74, 75, 558,
00942 -1, -1, -1, -1, -1, 558, 83, 29, -1, -1,
00943 32, 33, 34, 35, 36, 37, -1, 39, 40, 41,
00944 42, 43, 44, 45, -1, 4, -1, -1, 7, -1,
00945 -1, 10, 11, 12, 13, -1, -1, -1, -1, -1,
00946 -1, -1, -1, -1, -1, 4, 68, 69, -1, -1,
00947 29, 10, 11, 12, 13, 77, 78, 79, 37, -1,
00948 -1, 83, 84, -1, -1, -1, -1, 46, 47, -1,
00949 29, -1, -1, -1, -1, -1, -1, -1, 37, -1,
00950 59, -1, -1, -1, -1, -1, -1, 46, 47, -1,
00951 -1, 70, 71, 72, -1, 74, 75, -1, -1, -1,
00952 59, 7, -1, -1, 83, -1, -1, -1, -1, -1,
00953 -1, 70, 71, 72, -1, 74, 75, -1, -1, 7,
00954 -1, -1, -1, 29, 83, -1, 32, 33, 34, 35,
00955 36, 37, -1, 39, 40, 41, 42, 43, 44, 45,
00956 28, 29, -1, -1, 32, 33, 34, 35, 36, 37,
00957 -1, 39, 40, 41, 42, 43, 44, 45, 46, 47,
00958 -1, -1, 68, 69, -1, -1, -1, -1, -1, -1,
00959 58, 59, 78, 79, 62, 7, -1, 83, 84, -1,
00960 -1, 69, 70, -1, -1, -1, 18, -1, -1, -1,
00961 78, 79, 80, -1, -1, 83, 28, -1, -1, -1,
00962 32, 33, 34, 35, 36, -1, -1, 39, 40, 41,
00963 42, 43, 44, 45, -1, -1, 7, -1, -1, -1,
00964 -1, -1, -1, 14, -1, -1, -1, -1, -1, -1,
00965 62, 7, -1, -1, -1, -1, -1, 69, 14, -1,
00966 -1, 32, 33, 34, 35, 36, 78, 79, 39, 40,
00967 41, 42, 43, 44, 45, -1, 32, 33, 34, 35,
00968 36, -1, -1, 39, 40, 41, 42, 43, 44, 45,
00969 -1, 62, -1, -1, -1, -1, -1, -1, 69, 14,
00970 -1, -1, -1, -1, -1, -1, 62, 78, 79, -1,
00971 -1, -1, -1, 69, -1, -1, -1, 32, 33, 34,
00972 35, 36, 78, 79, 39, 40, 41, 42, 43, 44,
00973 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
00974 -1, -1, -1, 27, -1, -1, -1, 62, 32, 33,
00975 34, 35, 36, -1, 69, 39, 40, 41, 42, 43,
00976 44, 45, -1, 78, 79, -1, -1, -1, -1, -1,
00977 -1, -1, -1, -1, -1, -1, -1, -1, 62, -1,
00978 -1, -1, -1, -1, -1, 69, -1, -1, -1, -1,
00979 -1, -1, -1, -1, 78, 79, -1, 28, 29, -1,
00980 -1, 32, 33, 34, 35, 36, 37, 91, 39, 40,
00981 41, 42, 43, 44, 45, 46, 47, -1, -1, 18,
00982 -1, -1, -1, -1, -1, -1, -1, 58, 59, 28,
00983 -1, 62, -1, 32, 33, 34, 35, 36, 69, 70,
00984 39, 40, 41, 42, 43, 44, 45, 78, 79, 80,
00985 -1, -1, 83, 21, 22, -1, -1, -1, 89, 90,
00986 91, -1, -1, 62, 32, 33, 34, 35, 36, -1,
00987 69, 39, 40, 41, 42, 43, 44, 45, -1, 78,
00988 79, -1, 32, 33, 34, -1, -1, -1, -1, 39,
00989 40, 41, 42, 43, 44, 45, -1, -1, -1, -1,
00990 -1, 69, -1, -1, -1, -1, -1, -1, 28, 29,
00991 78, 79, 32, 33, 34, 35, 36, 37, 68, 39,
00992 40, 41, 42, 43, 44, 45, 46, 47, 78, 79,
00993 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
00994 -1, -1, 62, -1, 32, 33, 34, 35, 36, 69,
00995 70, 39, 40, 41, 42, 43, 44, 45, 78, 79,
00996 80, 29, -1, 83, 32, 33, 34, 35, 36, 37,
00997 -1, 39, 40, 41, 42, 43, 44, 45, -1, -1,
00998 68, 69, -1, -1, -1, -1, -1, -1, -1, -1,
00999 78, 79, -1, -1, -1, -1, 84, -1, -1, -1,
01000 68, 69, -1, -1, -1, -1, -1, -1, -1, -1,
01001 78, 79, -1, -1, -1, 83, 84, 32, 33, 34,
01002 35, 36, -1, -1, 39, 40, 41, 42, 43, 44,
01003 45, 32, 33, 34, 35, 36, -1, -1, 39, 40,
01004 41, 42, 43, 44, 45, -1, -1, 62, -1, -1,
01005 -1, -1, -1, -1, 69, -1, -1, -1, -1, -1,
01006 -1, -1, -1, 78, 79, -1, -1, -1, 69, -1,
01007 -1, -1, -1, -1, -1, -1, -1, 78, 79
01008 };
01009 #define YYPURE 1
01010
01011
01012 #line 3 "/usr/share/bison/bison.simple"
01013
01014
01015
01016
01017
01018
01019
01020
01021
01022
01023
01024
01025
01026
01027
01028
01029
01030
01031
01032
01033
01034
01035
01036
01037
01038
01039
01040
01041
01042
01043
01044
01045
01046
01047
01048
01049
01050
01051 #if ! defined (yyoverflow) || defined (YYERROR_VERBOSE)
01052
01053
01054
01055 # if YYSTACK_USE_ALLOCA
01056 # define YYSTACK_ALLOC alloca
01057 # else
01058 # ifndef YYSTACK_USE_ALLOCA
01059 # if defined (alloca) || defined (_ALLOCA_H)
01060 # define YYSTACK_ALLOC alloca
01061 # else
01062 # ifdef __GNUC__
01063 # define YYSTACK_ALLOC __builtin_alloca
01064 # endif
01065 # endif
01066 # endif
01067 # endif
01068
01069 # ifdef YYSTACK_ALLOC
01070
01071 # define YYSTACK_FREE(Ptr) do { ; } while (0)
01072 # else
01073 # if defined (__STDC__) || defined (__cplusplus)
01074 # include <stdlib.h>
01075 # define YYSIZE_T size_t
01076 # endif
01077 # define YYSTACK_ALLOC malloc
01078 # define YYSTACK_FREE free
01079 # endif
01080 #endif
01081
01082
01083 #if (! defined (yyoverflow) \
01084 && (! defined (__cplusplus) \
01085 || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
01086
01087
01088 union yyalloc
01089 {
01090 short yyss;
01091 YYSTYPE yyvs;
01092 # if YYLSP_NEEDED
01093 YYLTYPE yyls;
01094 # endif
01095 };
01096
01097
01098 # define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1)
01099
01100
01101
01102 # if YYLSP_NEEDED
01103 # define YYSTACK_BYTES(N) \
01104 ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
01105 + 2 * YYSTACK_GAP_MAX)
01106 # else
01107 # define YYSTACK_BYTES(N) \
01108 ((N) * (sizeof (short) + sizeof (YYSTYPE)) \
01109 + YYSTACK_GAP_MAX)
01110 # endif
01111
01112
01113
01114 # ifndef YYCOPY
01115 # if 1 < __GNUC__
01116 # define YYCOPY(To, From, Count) \
01117 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
01118 # else
01119 # define YYCOPY(To, From, Count) \
01120 do \
01121 { \
01122 register YYSIZE_T yyi; \
01123 for (yyi = 0; yyi < (Count); yyi++) \
01124 (To)[yyi] = (From)[yyi]; \
01125 } \
01126 while (0)
01127 # endif
01128 # endif
01129
01130
01131
01132
01133
01134
01135 # define YYSTACK_RELOCATE(Stack) \
01136 do \
01137 { \
01138 YYSIZE_T yynewbytes; \
01139 YYCOPY (&yyptr->Stack, Stack, yysize); \
01140 Stack = &yyptr->Stack; \
01141 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \
01142 yyptr += yynewbytes / sizeof (*yyptr); \
01143 } \
01144 while (0)
01145
01146 #endif
01147
01148
01149 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
01150 # define YYSIZE_T __SIZE_TYPE__
01151 #endif
01152 #if ! defined (YYSIZE_T) && defined (size_t)
01153 # define YYSIZE_T size_t
01154 #endif
01155 #if ! defined (YYSIZE_T)
01156 # if defined (__STDC__) || defined (__cplusplus)
01157 # include <stddef.h>
01158 # define YYSIZE_T size_t
01159 # endif
01160 #endif
01161 #if ! defined (YYSIZE_T)
01162 # define YYSIZE_T unsigned int
01163 #endif
01164
01165 #define yyerrok (yyerrstatus = 0)
01166 #define yyclearin (yychar = YYEMPTY)
01167 #define YYEMPTY -2
01168 #define YYEOF 0
01169 #define YYACCEPT goto yyacceptlab
01170 #define YYABORT goto yyabortlab
01171 #define YYERROR goto yyerrlab1
01172
01173
01174
01175 #define YYFAIL goto yyerrlab
01176 #define YYRECOVERING() (!!yyerrstatus)
01177 #define YYBACKUP(Token, Value) \
01178 do \
01179 if (yychar == YYEMPTY && yylen == 1) \
01180 { \
01181 yychar = (Token); \
01182 yylval = (Value); \
01183 yychar1 = YYTRANSLATE (yychar); \
01184 YYPOPSTACK; \
01185 goto yybackup; \
01186 } \
01187 else \
01188 { \
01189 yyerror ("syntax error: cannot back up"); \
01190 YYERROR; \
01191 } \
01192 while (0)
01193
01194 #define YYTERROR 1
01195 #define YYERRCODE 256
01196
01197
01198
01199
01200
01201
01202
01203
01204
01205 #ifndef YYLLOC_DEFAULT
01206 # define YYLLOC_DEFAULT(Current, Rhs, N) \
01207 Current.last_line = Rhs[N].last_line; \
01208 Current.last_column = Rhs[N].last_column;
01209 #endif
01210
01211
01212
01213
01214 #if YYPURE
01215 # if YYLSP_NEEDED
01216 # ifdef YYLEX_PARAM
01217 # define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
01218 # else
01219 # define YYLEX yylex (&yylval, &yylloc)
01220 # endif
01221 # else
01222 # ifdef YYLEX_PARAM
01223 # define YYLEX yylex (&yylval, YYLEX_PARAM)
01224 # else
01225 # define YYLEX yylex (&yylval)
01226 # endif
01227 # endif
01228 #else
01229 # define YYLEX yylex ()
01230 #endif
01231
01232
01233
01234 #if YYDEBUG
01235
01236 # ifndef YYFPRINTF
01237 # include <stdio.h>
01238 # define YYFPRINTF fprintf
01239 # endif
01240
01241 # define YYDPRINTF(Args) \
01242 do { \
01243 if (yydebug) \
01244 YYFPRINTF Args; \
01245 } while (0)
01246
01247
01248 int yydebug;
01249 #else
01250 # define YYDPRINTF(Args)
01251 #endif
01252
01253
01254 #ifndef YYINITDEPTH
01255 # define YYINITDEPTH 200
01256 #endif
01257
01258
01259
01260
01261
01262
01263
01264
01265 #if YYMAXDEPTH == 0
01266 # undef YYMAXDEPTH
01267 #endif
01268
01269 #ifndef YYMAXDEPTH
01270 # define YYMAXDEPTH 10000
01271 #endif
01272
01273 #ifdef YYERROR_VERBOSE
01274
01275 # ifndef yystrlen
01276 # if defined (__GLIBC__) && defined (_STRING_H)
01277 # define yystrlen strlen
01278 # else
01279
01280 static YYSIZE_T
01281 # if defined (__STDC__) || defined (__cplusplus)
01282 yystrlen (const char *yystr)
01283 # else
01284 yystrlen (yystr)
01285 const char *yystr;
01286 # endif
01287 {
01288 register const char *yys = yystr;
01289
01290 while (*yys++ != '\0')
01291 continue;
01292
01293 return yys - yystr - 1;
01294 }
01295 # endif
01296 # endif
01297
01298 # ifndef yystpcpy
01299 # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
01300 # define yystpcpy stpcpy
01301 # else
01302
01303
01304 static char *
01305 # if defined (__STDC__) || defined (__cplusplus)
01306 yystpcpy (char *yydest, const char *yysrc)
01307 # else
01308 yystpcpy (yydest, yysrc)
01309 char *yydest;
01310 const char *yysrc;
01311 # endif
01312 {
01313 register char *yyd = yydest;
01314 register const char *yys = yysrc;
01315
01316 while ((*yyd++ = *yys++) != '\0')
01317 continue;
01318
01319 return yyd - 1;
01320 }
01321 # endif
01322 # endif
01323 #endif
01324
01325 #line 315 "/usr/share/bison/bison.simple"
01326
01327
01328
01329
01330
01331
01332
01333
01334 #ifdef YYPARSE_PARAM
01335 # if defined (__STDC__) || defined (__cplusplus)
01336 # define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
01337 # define YYPARSE_PARAM_DECL
01338 # else
01339 # define YYPARSE_PARAM_ARG YYPARSE_PARAM
01340 # define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
01341 # endif
01342 #else
01343 # define YYPARSE_PARAM_ARG
01344 # define YYPARSE_PARAM_DECL
01345 #endif
01346
01347
01348 #ifdef __GNUC__
01349 # ifdef YYPARSE_PARAM
01350 int yyparse (void *);
01351 # else
01352 int yyparse (void);
01353 # endif
01354 #endif
01355
01356
01357
01358
01359 #define YY_DECL_NON_LSP_VARIABLES \
01360 \
01361 int yychar; \
01362 \
01363 \
01364 YYSTYPE yylval; \
01365
01366
01367
01368 YYSTYPE yyval;
01369 #if YYLSP_NEEDED
01370 YYLTYPE yyloc;
01371 #endif
01372 \
01373 \
01374 int yynerrs;
01375
01376 #if YYLSP_NEEDED
01377 # define YY_DECL_VARIABLES \
01378 YY_DECL_NON_LSP_VARIABLES \
01379 \
01380 \
01381 YYLTYPE yylloc;
01382 #else
01383 # define YY_DECL_VARIABLES \
01384 YY_DECL_NON_LSP_VARIABLES
01385 #endif
01386
01387
01388
01389
01390 #if !YYPURE
01391 YY_DECL_VARIABLES
01392 #endif
01393
01394 int
01395 yyparse (YYPARSE_PARAM_ARG)
01396 YYPARSE_PARAM_DECL
01397 {
01398
01399 #if YYPURE
01400 YY_DECL_VARIABLES
01401 #endif
01402
01403 register int yystate;
01404 register int yyn;
01405 int yyresult;
01406
01407 int yyerrstatus;
01408
01409 int yychar1 = 0;
01410
01411
01412
01413
01414
01415
01416
01417
01418
01419
01420 short yyssa[YYINITDEPTH];
01421 short *yyss = yyssa;
01422 register short *yyssp;
01423
01424
01425 YYSTYPE yyvsa[YYINITDEPTH];
01426 YYSTYPE *yyvs = yyvsa;
01427 register YYSTYPE *yyvsp;
01428
01429 #if YYLSP_NEEDED
01430
01431 YYLTYPE yylsa[YYINITDEPTH];
01432 YYLTYPE *yyls = yylsa;
01433 YYLTYPE *yylsp;
01434 #endif
01435
01436 #if YYLSP_NEEDED
01437 # define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
01438 #else
01439 # define YYPOPSTACK (yyvsp--, yyssp--)
01440 #endif
01441
01442 YYSIZE_T yystacksize = YYINITDEPTH;
01443
01444
01445
01446
01447 int yylen;
01448
01449 YYDPRINTF ((stderr, "Starting parse\n"));
01450
01451 yystate = 0;
01452 yyerrstatus = 0;
01453 yynerrs = 0;
01454 yychar = YYEMPTY;
01455
01456
01457
01458
01459
01460
01461 yyssp = yyss;
01462 yyvsp = yyvs;
01463 #if YYLSP_NEEDED
01464 yylsp = yyls;
01465 #endif
01466 goto yysetstate;
01467
01468
01469
01470
01471 yynewstate:
01472
01473
01474
01475 yyssp++;
01476
01477 yysetstate:
01478 *yyssp = yystate;
01479
01480 if (yyssp >= yyss + yystacksize - 1)
01481 {
01482
01483 YYSIZE_T yysize = yyssp - yyss + 1;
01484
01485 #ifdef yyoverflow
01486 {
01487
01488
01489
01490 YYSTYPE *yyvs1 = yyvs;
01491 short *yyss1 = yyss;
01492
01493
01494
01495 # if YYLSP_NEEDED
01496 YYLTYPE *yyls1 = yyls;
01497
01498
01499 yyoverflow ("parser stack overflow",
01500 &yyss1, yysize * sizeof (*yyssp),
01501 &yyvs1, yysize * sizeof (*yyvsp),
01502 &yyls1, yysize * sizeof (*yylsp),
01503 &yystacksize);
01504 yyls = yyls1;
01505 # else
01506 yyoverflow ("parser stack overflow",
01507 &yyss1, yysize * sizeof (*yyssp),
01508 &yyvs1, yysize * sizeof (*yyvsp),
01509 &yystacksize);
01510 # endif
01511 yyss = yyss1;
01512 yyvs = yyvs1;
01513 }
01514 #else
01515 # ifndef YYSTACK_RELOCATE
01516 goto yyoverflowlab;
01517 # else
01518
01519 if (yystacksize >= YYMAXDEPTH)
01520 goto yyoverflowlab;
01521 yystacksize *= 2;
01522 if (yystacksize > YYMAXDEPTH)
01523 yystacksize = YYMAXDEPTH;
01524
01525 {
01526 short *yyss1 = yyss;
01527 union yyalloc *yyptr =
01528 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
01529 if (! yyptr)
01530 goto yyoverflowlab;
01531 YYSTACK_RELOCATE (yyss);
01532 YYSTACK_RELOCATE (yyvs);
01533 # if YYLSP_NEEDED
01534 YYSTACK_RELOCATE (yyls);
01535 # endif
01536 # undef YYSTACK_RELOCATE
01537 if (yyss1 != yyssa)
01538 YYSTACK_FREE (yyss1);
01539 }
01540 # endif
01541 #endif
01542
01543 yyssp = yyss + yysize - 1;
01544 yyvsp = yyvs + yysize - 1;
01545 #if YYLSP_NEEDED
01546 yylsp = yyls + yysize - 1;
01547 #endif
01548
01549 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
01550 (unsigned long int) yystacksize));
01551
01552 if (yyssp >= yyss + yystacksize - 1)
01553 YYABORT;
01554 }
01555
01556 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
01557
01558 goto yybackup;
01559
01560
01561
01562
01563
01564 yybackup:
01565
01566
01567
01568
01569
01570
01571
01572 yyn = yypact[yystate];
01573 if (yyn == YYFLAG)
01574 goto yydefault;
01575
01576
01577
01578
01579
01580
01581 if (yychar == YYEMPTY)
01582 {
01583 YYDPRINTF ((stderr, "Reading a token: "));
01584 yychar = YYLEX;
01585 }
01586
01587
01588
01589 if (yychar <= 0)
01590 {
01591 yychar1 = 0;
01592 yychar = YYEOF;
01593
01594 YYDPRINTF ((stderr, "Now at end of input.\n"));
01595 }
01596 else
01597 {
01598 yychar1 = YYTRANSLATE (yychar);
01599
01600 #if YYDEBUG
01601
01602
01603 if (yydebug)
01604 {
01605 YYFPRINTF (stderr, "Next token is %d (%s",
01606 yychar, yytname[yychar1]);
01607
01608
01609 # ifdef YYPRINT
01610 YYPRINT (stderr, yychar, yylval);
01611 # endif
01612 YYFPRINTF (stderr, ")\n");
01613 }
01614 #endif
01615 }
01616
01617 yyn += yychar1;
01618 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
01619 goto yydefault;
01620
01621 yyn = yytable[yyn];
01622
01623
01624
01625
01626
01627
01628
01629
01630 if (yyn < 0)
01631 {
01632 if (yyn == YYFLAG)
01633 goto yyerrlab;
01634 yyn = -yyn;
01635 goto yyreduce;
01636 }
01637 else if (yyn == 0)
01638 goto yyerrlab;
01639
01640 if (yyn == YYFINAL)
01641 YYACCEPT;
01642
01643
01644 YYDPRINTF ((stderr, "Shifting token %d (%s), ",
01645 yychar, yytname[yychar1]));
01646
01647
01648 if (yychar != YYEOF)
01649 yychar = YYEMPTY;
01650
01651 *++yyvsp = yylval;
01652 #if YYLSP_NEEDED
01653 *++yylsp = yylloc;
01654 #endif
01655
01656
01657
01658 if (yyerrstatus)
01659 yyerrstatus--;
01660
01661 yystate = yyn;
01662 goto yynewstate;
01663
01664
01665
01666
01667
01668 yydefault:
01669 yyn = yydefact[yystate];
01670 if (yyn == 0)
01671 goto yyerrlab;
01672 goto yyreduce;
01673
01674
01675
01676
01677
01678 yyreduce:
01679
01680 yylen = yyr2[yyn];
01681
01682
01683
01684
01685
01686
01687
01688
01689
01690 yyval = yyvsp[1-yylen];
01691
01692 #if YYLSP_NEEDED
01693
01694
01695 yyloc = yylsp[1-yylen];
01696 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
01697 #endif
01698
01699 #if YYDEBUG
01700
01701
01702 if (yydebug)
01703 {
01704 int yyi;
01705
01706 YYFPRINTF (stderr, "Reducing via rule %d (line %d), ",
01707 yyn, yyrline[yyn]);
01708
01709
01710 for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++)
01711 YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
01712 YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]);
01713 }
01714 #endif
01715
01716 switch (yyn) {
01717
01718 case 1:
01719 #line 79 "PSDL.yy"
01720 { yyval = new TAO_PSDL_Specification (yyvsp[0]); ;
01721 break;}
01722 case 2:
01723 #line 82 "PSDL.yy"
01724 { yyval = new TAO_PSDL_Specification (yyvsp[-1], yyvsp[0]); ;
01725 break;}
01726 case 3:
01727 #line 86 "PSDL.yy"
01728 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01729 break;}
01730 case 4:
01731 #line 89 "PSDL.yy"
01732 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01733 break;}
01734 case 5:
01735 #line 92 "PSDL.yy"
01736 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01737 break;}
01738 case 6:
01739 #line 95 "PSDL.yy"
01740 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01741 break;}
01742 case 7:
01743 #line 98 "PSDL.yy"
01744 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01745 break;}
01746 case 8:
01747 #line 101 "PSDL.yy"
01748 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01749 break;}
01750 case 9:
01751 #line 104 "PSDL.yy"
01752 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01753 break;}
01754 case 10:
01755 #line 107 "PSDL.yy"
01756 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01757 break;}
01758 case 11:
01759 #line 110 "PSDL.yy"
01760 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01761 break;}
01762 case 12:
01763 #line 113 "PSDL.yy"
01764 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01765 break;}
01766 case 13:
01767 #line 116 "PSDL.yy"
01768 { yyval = new TAO_PSDL_Definition (yyvsp[-1]); ;
01769 break;}
01770 case 14:
01771 #line 120 "PSDL.yy"
01772 {
01773 int good_module_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_module (TAO_PSDL_Scope::instance ()->get_identifier ());
01774 if (good_module_name == -1)
01775 YYABORT;
01776 ;
01777 break;}
01778 case 15:
01779 #line 126 "PSDL.yy"
01780 {
01781 TAO_PSDL_Scope::instance ()->set_module_scope ();
01782 yyval = new TAO_PSDL_Module (TAO_PSDL_MODULE, yyvsp[-4], yyvsp[-1]); ;
01783 break;}
01784 case 16:
01785 #line 132 "PSDL.yy"
01786 { TAO_PSDL_Scope::instance ()->set_scope ();
01787 yyval = new TAO_PSDL_Abstract_Storagetype (yyvsp[0]); ;
01788 break;}
01789 case 17:
01790 #line 136 "PSDL.yy"
01791 { yyval = new TAO_PSDL_Abstract_Storagetype (yyvsp[0]); ;
01792 break;}
01793 case 18:
01794 #line 140 "PSDL.yy"
01795 { yyval = new TAO_PSDL_Abstract_Storagetype_Dcl (yyvsp[-3], yyvsp[-1]); ;
01796 break;}
01797 case 19:
01798 #line 143 "PSDL.yy"
01799 { yyval = new TAO_PSDL_Abstract_Storagetype_Dcl (yyvsp[-2]); ;
01800 break;}
01801 case 20:
01802 #line 147 "PSDL.yy"
01803 { yyval = new TAO_PSDL_Abstract_Storagetype_Fwd_Dcl (yyvsp[0]); ;
01804 break;}
01805 case 21:
01806 #line 151 "PSDL.yy"
01807 {
01808 int good_storagetype_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_interface (TAO_PSDL_Scope::instance ()->get_identifier ());
01809 if (good_storagetype_name == -1)
01810 YYABORT;
01811
01812 yyval = yyvsp[0];
01813 ;
01814 break;}
01815 case 22:
01816 #line 162 "PSDL.yy"
01817 { yyval = new TAO_PSDL_Abstract_Storagetype_Header (yyvsp[-1], yyvsp[0]); ;
01818 break;}
01819 case 23:
01820 #line 165 "PSDL.yy"
01821 { yyval = new TAO_PSDL_Abstract_Storagetype_Header (yyvsp[0]); ;
01822 break;}
01823 case 24:
01824 #line 170 "PSDL.yy"
01825 { yyval = new TAO_PSDL_Abstract_Storagetype_Body (yyvsp[0]); ;
01826 break;}
01827 case 25:
01828 #line 173 "PSDL.yy"
01829 { yyval = new TAO_PSDL_Abstract_Storagetype_Body (yyvsp[-1], yyvsp[0]); ;
01830 break;}
01831 case 26:
01832 #line 178 "PSDL.yy"
01833 { yyval = new TAO_PSDL_Abstract_Storagetype_Member (yyvsp[-1]); ;
01834 break;}
01835 case 27:
01836 #line 181 "PSDL.yy"
01837 { yyval = new TAO_PSDL_Abstract_Storagetype_Member (yyvsp[-1]); ;
01838 break;}
01839 case 28:
01840 #line 186 "PSDL.yy"
01841 { yyval = new TAO_PSDL_Abstract_Storagetype_Inh_Spec (yyvsp[0]); ;
01842 break;}
01843 case 29:
01844 #line 191 "PSDL.yy"
01845 { yyval = new TAO_PSDL_Abstract_Storagetype_Name (yyvsp[0]); ;
01846 break;}
01847 case 30:
01848 #line 194 "PSDL.yy"
01849 { yyval = new TAO_PSDL_Abstract_Storagetype_Name (yyvsp[-2], yyvsp[0]); ;
01850 break;}
01851 case 31:
01852 #line 198 "PSDL.yy"
01853 { yyval = new TAO_PSDL_Psdl_State_Dcl (yyvsp[-3], yyvsp[-1], yyvsp[0]); ;
01854 break;}
01855 case 32:
01856 #line 201 "PSDL.yy"
01857 { yyval = new TAO_PSDL_Psdl_State_Dcl (yyvsp[-1], yyvsp[0]); ;
01858 break;}
01859 case 33:
01860 #line 205 "PSDL.yy"
01861 { yyval = new TAO_PSDL_Psdl_State_Type_Spec (yyvsp[0]); ;
01862 break;}
01863 case 34:
01864 #line 208 "PSDL.yy"
01865 { yyval = new TAO_PSDL_Psdl_State_Type_Spec (yyvsp[0]); ;
01866 break;}
01867 case 35:
01868 #line 211 "PSDL.yy"
01869 { yyval = new TAO_PSDL_Psdl_State_Type_Spec (yyvsp[0]); ;
01870 break;}
01871 case 36:
01872 #line 214 "PSDL.yy"
01873 { yyval = new TAO_PSDL_Psdl_State_Type_Spec (yyvsp[0]); ;
01874 break;}
01875 case 37:
01876 #line 217 "PSDL.yy"
01877 { yyval = new TAO_PSDL_Psdl_State_Type_Spec (yyvsp[0]); ;
01878 break;}
01879 case 38:
01880 #line 222 "PSDL.yy"
01881 { yyval = new TAO_PSDL_Abstract_Storagetype_Ref_Type (yyvsp[-4], yyvsp[-1]); ;
01882 break;}
01883 case 39:
01884 #line 225 "PSDL.yy"
01885 { yyval = new TAO_PSDL_Abstract_Storagetype_Ref_Type (yyvsp[-1]); ;
01886 break;}
01887 case 40:
01888 #line 229 "PSDL.yy"
01889 { yyval = new TAO_PSDL_Abstract_Storagehome (yyvsp[0]); ;
01890 break;}
01891 case 41:
01892 #line 232 "PSDL.yy"
01893 { yyval = new TAO_PSDL_Abstract_Storagehome (yyvsp[0]); ;
01894 break;}
01895 case 42:
01896 #line 237 "PSDL.yy"
01897 { yyval = new TAO_PSDL_Abstract_Storagehome_Fwd_Dcl (yyvsp[0]); ;
01898 break;}
01899 case 43:
01900 #line 242 "PSDL.yy"
01901 { yyval = new TAO_PSDL_Abstract_Storagehome_Dcl (yyvsp[-3], yyvsp[-1]); ;
01902 break;}
01903 case 44:
01904 #line 245 "PSDL.yy"
01905 { yyval = new TAO_PSDL_Abstract_Storagehome_Dcl (yyvsp[-2]); ;
01906 break;}
01907 case 45:
01908 #line 250 "PSDL.yy"
01909 { yyval = new TAO_PSDL_Abstract_Storagehome_Header (yyvsp[-3], yyvsp[-1], yyvsp[0]); ;
01910 break;}
01911 case 46:
01912 #line 253 "PSDL.yy"
01913 { yyval = new TAO_PSDL_Abstract_Storagehome_Header (yyvsp[-2], yyvsp[0]); ;
01914 break;}
01915 case 47:
01916 #line 258 "PSDL.yy"
01917 { yyval = new TAO_PSDL_Abstract_Storagehome_Body (yyvsp[0]); ;
01918 break;}
01919 case 48:
01920 #line 261 "PSDL.yy"
01921 { yyval = new TAO_PSDL_Abstract_Storagehome_Body (yyvsp[-1], yyvsp[0]); ;
01922 break;}
01923 case 49:
01924 #line 266 "PSDL.yy"
01925 { yyval = new TAO_PSDL_Abstract_Storagehome_Member (yyvsp[-1]); ;
01926 break;}
01927 case 50:
01928 #line 269 "PSDL.yy"
01929 { yyval = new TAO_PSDL_Abstract_Storagehome_Member (yyvsp[-1]); ;
01930 break;}
01931 case 51:
01932 #line 272 "PSDL.yy"
01933 { yyval = new TAO_PSDL_Abstract_Storagehome_Member (yyvsp[-1]); ;
01934 break;}
01935 case 52:
01936 #line 277 "PSDL.yy"
01937 { yyval = new TAO_PSDL_Abstract_Storagehome_Inh_Spec (yyvsp[0]); ;
01938 break;}
01939 case 53:
01940 #line 282 "PSDL.yy"
01941 { yyval = new TAO_PSDL_Abstract_Storagehome_Name (yyvsp[0]); ;
01942 break;}
01943 case 54:
01944 #line 285 "PSDL.yy"
01945 { yyval = new TAO_PSDL_Abstract_Storagehome_Name (yyvsp[-2], yyvsp[0]); ;
01946 break;}
01947 case 55:
01948 #line 289 "PSDL.yy"
01949 { TAO_PSDL_Scope::instance ()->set_scope ();
01950 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
01951 break;}
01952 case 56:
01953 #line 293 "PSDL.yy"
01954 { TAO_PSDL_Scope::instance ()->set_scope ();
01955 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
01956 break;}
01957 case 57:
01958 #line 298 "PSDL.yy"
01959 { yyval = new TAO_PSDL_Key_Dcl (yyvsp[-3], yyvsp[-1]); ;
01960 break;}
01961 case 58:
01962 #line 301 "PSDL.yy"
01963 { yyval = new TAO_PSDL_Key_Dcl (yyvsp[0]); ;
01964 break;}
01965 case 59:
01966 #line 305 "PSDL.yy"
01967 { yyval = new TAO_PSDL_Catalog (yyvsp[-4], yyvsp[-3], yyvsp[-1]); ;
01968 break;}
01969 case 60:
01970 #line 308 "PSDL.yy"
01971 { yyval = new TAO_PSDL_Catalog (yyvsp[-3], yyvsp[-1]); ;
01972 break;}
01973 case 61:
01974 #line 311 "PSDL.yy"
01975 { yyval = new TAO_PSDL_Catalog (yyvsp[-2]); ;
01976 break;}
01977 case 62:
01978 #line 314 "PSDL.yy"
01979 { yyval = new TAO_PSDL_Catalog (yyvsp[-3], yyvsp[-2]); ;
01980 break;}
01981 case 63:
01982 #line 318 "PSDL.yy"
01983 { yyval = new TAO_PSDL_Catalog_Inh_Spec (yyvsp[0]); ;
01984 break;}
01985 case 64:
01986 #line 322 "PSDL.yy"
01987 { yyval = new TAO_PSDL_Catalog_Name (yyvsp[0]); ;
01988 break;}
01989 case 65:
01990 #line 325 "PSDL.yy"
01991 { yyval = new TAO_PSDL_Catalog_Name (yyvsp[-2], yyvsp[0]); ;
01992 break;}
01993 case 66:
01994 #line 329 "PSDL.yy"
01995 { yyval = new TAO_PSDL_Catalog_Body (yyvsp[0]); ;
01996 break;}
01997 case 67:
01998 #line 332 "PSDL.yy"
01999 { yyval = new TAO_PSDL_Catalog_Body (yyvsp[-1], yyvsp[0]); ;
02000 break;}
02001 case 68:
02002 #line 336 "PSDL.yy"
02003 { yyval = new TAO_PSDL_Catalog_Member (yyvsp[-1]); ;
02004 break;}
02005 case 69:
02006 #line 339 "PSDL.yy"
02007 { yyval = new TAO_PSDL_Catalog_Member (yyvsp[-1]); ;
02008 break;}
02009 case 70:
02010 #line 343 "PSDL.yy"
02011 { yyval = new TAO_PSDL_Provides_Dcl (yyvsp[-1], yyvsp[0]); ;
02012 break;}
02013 case 71:
02014 #line 347 "PSDL.yy"
02015 { yyval = new TAO_PSDL_Storagetype (yyvsp[0]); ;
02016 break;}
02017 case 72:
02018 #line 350 "PSDL.yy"
02019 { yyval = new TAO_PSDL_Storagetype (yyvsp[0]); ;
02020 break;}
02021 case 73:
02022 #line 354 "PSDL.yy"
02023 { yyval = new TAO_PSDL_Storagetype_Dcl (yyvsp[-3], yyvsp[-1]); ;
02024 break;}
02025 case 74:
02026 #line 357 "PSDL.yy"
02027 { yyval = new TAO_PSDL_Storagetype_Dcl (yyvsp[-2]); ;
02028 break;}
02029 case 75:
02030 #line 361 "PSDL.yy"
02031 { yyval = new TAO_PSDL_Storagetype_Fwd_Dcl (yyvsp[0]); ;
02032 break;}
02033 case 76:
02034 #line 365 "PSDL.yy"
02035 { yyval = new TAO_PSDL_Storagetype_Header (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02036 break;}
02037 case 77:
02038 #line 368 "PSDL.yy"
02039 { yyval = new TAO_PSDL_Storagetype_Header (yyvsp[-1], yyvsp[0]); ;
02040 break;}
02041 case 78:
02042 #line 371 "PSDL.yy"
02043 { yyval = new TAO_PSDL_Storagetype_Header (yyvsp[-1], yyvsp[0]); ;
02044 break;}
02045 case 79:
02046 #line 375 "PSDL.yy"
02047 { yyval = new TAO_PSDL_Storagetype_Body (yyvsp[0]); ;
02048 break;}
02049 case 80:
02050 #line 378 "PSDL.yy"
02051 { yyval = new TAO_PSDL_Storagetype_Body (yyvsp[-1], yyvsp[0]); ;
02052 break;}
02053 case 81:
02054 #line 382 "PSDL.yy"
02055 { yyval = new TAO_PSDL_Storagetype_Member (yyvsp[-1]); ;
02056 break;}
02057 case 82:
02058 #line 385 "PSDL.yy"
02059 { yyval = new TAO_PSDL_Storagetype_Member (yyvsp[-1]); ;
02060 break;}
02061 case 83:
02062 #line 388 "PSDL.yy"
02063 { yyval = new TAO_PSDL_Storagetype_Member (yyvsp[-1]); ;
02064 break;}
02065 case 84:
02066 #line 392 "PSDL.yy"
02067 { yyval = new TAO_PSDL_Storagetype_Inh_Spec (yyvsp[0]); ;
02068 break;}
02069 case 85:
02070 #line 396 "PSDL.yy"
02071 { yyval = new TAO_PSDL_Storagetype_Name (yyvsp[0]); ;
02072 break;}
02073 case 86:
02074 #line 400 "PSDL.yy"
02075 { yyval = new TAO_PSDL_Storagetype_Impl_Spec (yyvsp[0]); ;
02076 break;}
02077 case 87:
02078 #line 404 "PSDL.yy"
02079 { yyval = new TAO_PSDL_Storagetype_Ref_Type (yyvsp[-1]); ;
02080 break;}
02081 case 88:
02082 #line 408 "PSDL.yy"
02083 { yyval = new TAO_PSDL_Storagehome_Scope (yyvsp[0]); ;
02084 break;}
02085 case 89:
02086 #line 412 "PSDL.yy"
02087 { yyval = new TAO_PSDL_Store_Directive (yyvsp[-3], yyvsp[-1], yyvsp[0]); ;
02088 break;}
02089 case 90:
02090 #line 415 "PSDL.yy"
02091 { yyval = new TAO_PSDL_Store_Directive (yyvsp[-2], yyvsp[0]); ;
02092 break;}
02093 case 91:
02094 #line 420 "PSDL.yy"
02095 { yyval = new TAO_PSDL_Psdl_Concrete_State_Type (yyvsp[0]); ;
02096 break;}
02097 case 92:
02098 #line 423 "PSDL.yy"
02099 { yyval = new TAO_PSDL_Psdl_Concrete_State_Type (yyvsp[0]); ;
02100 break;}
02101 case 93:
02102 #line 427 "PSDL.yy"
02103 { yyval = new TAO_PSDL_Ref_Rep_Directive (yyvsp[-1]); ;
02104 break;}
02105 case 94:
02106 #line 431 "PSDL.yy"
02107 { yyval = new TAO_PSDL_Storagehome (yyvsp[-3], yyvsp[-1]); ;
02108 break;}
02109 case 95:
02110 #line 434 "PSDL.yy"
02111 { yyval = new TAO_PSDL_Storagehome (yyvsp[-2]); ;
02112 break;}
02113 case 96:
02114 #line 438 "PSDL.yy"
02115 { yyval = new TAO_PSDL_Storagehome_Header (yyvsp[-4], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02116 break;}
02117 case 97:
02118 #line 441 "PSDL.yy"
02119 { yyval = new TAO_PSDL_Storagehome_Header (yyvsp[-3], yyvsp[-1], yyvsp[0]); ;
02120 break;}
02121 case 98:
02122 #line 444 "PSDL.yy"
02123 { yyval = new TAO_PSDL_Storagehome_Header (yyvsp[-3], yyvsp[-1], yyvsp[0]); ;
02124 break;}
02125 case 99:
02126 #line 447 "PSDL.yy"
02127 { yyval = new TAO_PSDL_Storagehome_Header (yyvsp[-2], yyvsp[0]); ;
02128 break;}
02129 case 100:
02130 #line 451 "PSDL.yy"
02131 { yyval = new TAO_PSDL_Storagehome_Body (yyvsp[0]); ;
02132 break;}
02133 case 101:
02134 #line 454 "PSDL.yy"
02135 { yyval = new TAO_PSDL_Storagehome_Body (yyvsp[-1], yyvsp[0]); ;
02136 break;}
02137 case 102:
02138 #line 458 "PSDL.yy"
02139 { yyval = new TAO_PSDL_Storagehome_Member (yyvsp[-1]); ;
02140 break;}
02141 case 103:
02142 #line 461 "PSDL.yy"
02143 { yyval = new TAO_PSDL_Storagehome_Member (yyvsp[-1]); ;
02144 break;}
02145 case 104:
02146 #line 465 "PSDL.yy"
02147 { yyval = new TAO_PSDL_Storagehome_Inh_Spec (yyvsp[0]); ;
02148 break;}
02149 case 105:
02150 #line 469 "PSDL.yy"
02151 { yyval = new TAO_PSDL_Storagehome_Name (yyvsp[0]); ;
02152 break;}
02153 case 106:
02154 #line 473 "PSDL.yy"
02155 { yyval = new TAO_PSDL_Storagehome_Impl_Spec (yyvsp[0]); ;
02156 break;}
02157 case 107:
02158 #line 477 "PSDL.yy"
02159 { yyval = new TAO_PSDL_Primary_Key_Dcl (yyvsp[0]); ;
02160 break;}
02161 case 108:
02162 #line 480 "PSDL.yy"
02163 { yyval = new TAO_PSDL_Primary_Key_Dcl (); ;
02164 break;}
02165 case 109:
02166 #line 484 "PSDL.yy"
02167 { yyval = yyvsp[0]; ;
02168 break;}
02169 case 110:
02170 #line 488 "PSDL.yy"
02171 { yyval = new TAO_PSDL_Type_Dcl (TAO_PSDL_TYPEDEF, yyvsp[0]); ;
02172 break;}
02173 case 111:
02174 #line 491 "PSDL.yy"
02175 { yyval = new TAO_PSDL_Type_Dcl (yyvsp[0]); ;
02176 break;}
02177 case 112:
02178 #line 494 "PSDL.yy"
02179 { yyval = new TAO_PSDL_Type_Dcl (yyvsp[0]); ;
02180 break;}
02181 case 113:
02182 #line 497 "PSDL.yy"
02183 { yyval = new TAO_PSDL_Type_Dcl (yyvsp[0]); ;
02184 break;}
02185 case 114:
02186 #line 500 "PSDL.yy"
02187 { yyval = new TAO_PSDL_Type_Dcl (TAO_PSDL_NATIVE, yyvsp[0]); ;
02188 break;}
02189 case 115:
02190 #line 503 "PSDL.yy"
02191 { yyval = new TAO_PSDL_Type_Dcl (yyvsp[0]); ;
02192 break;}
02193 case 116:
02194 #line 507 "PSDL.yy"
02195 { yyval = new TAO_PSDL_Type_Declarator (yyvsp[-1], yyvsp[0]); ;
02196 break;}
02197 case 117:
02198 #line 511 "PSDL.yy"
02199 { yyval = new TAO_PSDL_Type_Spec (yyvsp[0]); ;
02200 break;}
02201 case 118:
02202 #line 514 "PSDL.yy"
02203 { yyval = new TAO_PSDL_Type_Spec (yyvsp[0]); ;
02204 break;}
02205 case 119:
02206 #line 518 "PSDL.yy"
02207 { yyval = new TAO_PSDL_Simple_Type_Spec (yyvsp[0]); ;
02208 break;}
02209 case 120:
02210 #line 521 "PSDL.yy"
02211 { yyval = new TAO_PSDL_Simple_Type_Spec (yyvsp[0]); ;
02212 break;}
02213 case 121:
02214 #line 524 "PSDL.yy"
02215 { yyval = new TAO_PSDL_Simple_Type_Spec (yyvsp[0]); ;
02216 break;}
02217 case 122:
02218 #line 528 "PSDL.yy"
02219 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02220 break;}
02221 case 123:
02222 #line 531 "PSDL.yy"
02223 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02224 break;}
02225 case 124:
02226 #line 534 "PSDL.yy"
02227 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02228 break;}
02229 case 125:
02230 #line 537 "PSDL.yy"
02231 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02232 break;}
02233 case 126:
02234 #line 540 "PSDL.yy"
02235 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02236 break;}
02237 case 127:
02238 #line 543 "PSDL.yy"
02239 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02240 break;}
02241 case 128:
02242 #line 546 "PSDL.yy"
02243 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02244 break;}
02245 case 129:
02246 #line 549 "PSDL.yy"
02247 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02248 break;}
02249 case 130:
02250 #line 552 "PSDL.yy"
02251 { yyval = new TAO_PSDL_Base_Type_Spec (yyvsp[0]); ;
02252 break;}
02253 case 131:
02254 #line 556 "PSDL.yy"
02255 { yyval = new TAO_PSDL_Template_Type_Spec (yyvsp[0]); ;
02256 break;}
02257 case 132:
02258 #line 559 "PSDL.yy"
02259 { yyval = new TAO_PSDL_Template_Type_Spec (yyvsp[0]); ;
02260 break;}
02261 case 133:
02262 #line 562 "PSDL.yy"
02263 { yyval = new TAO_PSDL_Template_Type_Spec (yyvsp[0]); ;
02264 break;}
02265 case 134:
02266 #line 565 "PSDL.yy"
02267 { yyval = new TAO_PSDL_Template_Type_Spec (yyvsp[0]); ;
02268 break;}
02269 case 135:
02270 #line 569 "PSDL.yy"
02271 { yyval = new TAO_PSDL_Constr_Type_Spec (yyvsp[0]); ;
02272 break;}
02273 case 136:
02274 #line 572 "PSDL.yy"
02275 { yyval = new TAO_PSDL_Constr_Type_Spec (yyvsp[0]); ;
02276 break;}
02277 case 137:
02278 #line 575 "PSDL.yy"
02279 { yyval = new TAO_PSDL_Constr_Type_Spec (yyvsp[0]); ;
02280 break;}
02281 case 138:
02282 #line 579 "PSDL.yy"
02283 { yyval = new TAO_PSDL_Declarators (yyvsp[0]); ;
02284 break;}
02285 case 139:
02286 #line 582 "PSDL.yy"
02287 { yyval = new TAO_PSDL_Declarators (yyvsp[-2], yyvsp[0]); ;
02288 break;}
02289 case 140:
02290 #line 586 "PSDL.yy"
02291 { yyval = new TAO_PSDL_Declarator (yyvsp[0]); ;
02292 break;}
02293 case 141:
02294 #line 589 "PSDL.yy"
02295 { yyval = new TAO_PSDL_Declarator (yyvsp[0]); ;
02296 break;}
02297 case 142:
02298 #line 593 "PSDL.yy"
02299 { yyval = yyvsp[0]; ;
02300 break;}
02301 case 143:
02302 #line 597 "PSDL.yy"
02303 { yyval = new TAO_PSDL_Simple_Declarator_List (yyvsp[0]); ;
02304 break;}
02305 case 144:
02306 #line 600 "PSDL.yy"
02307 { yyval = new TAO_PSDL_Simple_Declarator_List (yyvsp[-2], yyvsp[0]); ;
02308 break;}
02309 case 145:
02310 #line 604 "PSDL.yy"
02311 { yyval = new TAO_PSDL_Complex_Declarator (yyvsp[0]); ;
02312 break;}
02313 case 146:
02314 #line 608 "PSDL.yy"
02315 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_FLOAT); ;
02316 break;}
02317 case 147:
02318 #line 611 "PSDL.yy"
02319 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_DOUBLE); ;
02320 break;}
02321 case 148:
02322 #line 614 "PSDL.yy"
02323 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_LONG, TAO_PSDL_DOUBLE); ;
02324 break;}
02325 case 149:
02326 #line 618 "PSDL.yy"
02327 { yyval = yyvsp[0]; ;
02328 break;}
02329 case 150:
02330 #line 621 "PSDL.yy"
02331 { yyval = yyvsp[0]; ;
02332 break;}
02333 case 151:
02334 #line 625 "PSDL.yy"
02335 { yyval = yyvsp[0]; ;
02336 break;}
02337 case 152:
02338 #line 628 "PSDL.yy"
02339 { yyval = yyvsp[0]; ;
02340 break;}
02341 case 153:
02342 #line 631 "PSDL.yy"
02343 { yyval = yyvsp[0]; ;
02344 break;}
02345 case 154:
02346 #line 635 "PSDL.yy"
02347 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_SHORT); ;
02348 break;}
02349 case 155:
02350 #line 639 "PSDL.yy"
02351 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_LONG); ;
02352 break;}
02353 case 156:
02354 #line 643 "PSDL.yy"
02355 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_LONG, TAO_PSDL_LONG); ;
02356 break;}
02357 case 157:
02358 #line 647 "PSDL.yy"
02359 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[0]); ;
02360 break;}
02361 case 158:
02362 #line 650 "PSDL.yy"
02363 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[0]); ;
02364 break;}
02365 case 159:
02366 #line 653 "PSDL.yy"
02367 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[0]); ;
02368 break;}
02369 case 160:
02370 #line 657 "PSDL.yy"
02371 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_UNSIGNED, TAO_PSDL_SHORT); ;
02372 break;}
02373 case 161:
02374 #line 661 "PSDL.yy"
02375 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_UNSIGNED, TAO_PSDL_LONG); ;
02376 break;}
02377 case 162:
02378 #line 665 "PSDL.yy"
02379 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_UNSIGNED, TAO_PSDL_LONG, TAO_PSDL_LONG); ;
02380 break;}
02381 case 163:
02382 #line 669 "PSDL.yy"
02383 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_CHAR); ;
02384 break;}
02385 case 164:
02386 #line 673 "PSDL.yy"
02387 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_WCHAR); ;
02388 break;}
02389 case 165:
02390 #line 677 "PSDL.yy"
02391 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_BOOLEAN); ;
02392 break;}
02393 case 166:
02394 #line 681 "PSDL.yy"
02395 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_OCTET); ;
02396 break;}
02397 case 167:
02398 #line 685 "PSDL.yy"
02399 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_ANY); ;
02400 break;}
02401 case 168:
02402 #line 689 "PSDL.yy"
02403 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_OBJECT); ;
02404 break;}
02405 case 169:
02406 #line 693 "PSDL.yy"
02407 {
02408 int good_struct_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_struct (TAO_PSDL_Scope::instance ()->get_identifier ());
02409
02410 if (good_struct_name == -1)
02411 YYABORT;
02412 ;
02413 break;}
02414 case 170:
02415 #line 700 "PSDL.yy"
02416 {
02417 TAO_PSDL_Scope::instance ()->set_scope ();
02418 yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_STRUCT, yyvsp[-4], yyvsp[-1]); ;
02419 break;}
02420 case 171:
02421 #line 706 "PSDL.yy"
02422 { yyval = new TAO_PSDL_Member_List (yyvsp[0]); ;
02423 break;}
02424 case 172:
02425 #line 709 "PSDL.yy"
02426 { yyval = new TAO_PSDL_Member_List (yyvsp[-1], yyvsp[0]); ;
02427 break;}
02428 case 173:
02429 #line 713 "PSDL.yy"
02430 { yyval = new TAO_PSDL_Member (yyvsp[-2], yyvsp[-1]); ;
02431 break;}
02432 case 174:
02433 #line 717 "PSDL.yy"
02434 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[-7], yyvsp[-4], yyvsp[-1]); ;
02435 break;}
02436 case 175:
02437 #line 721 "PSDL.yy"
02438 { yyval = new TAO_PSDL_Switch_Type_Spec (yyvsp[0]); ;
02439 break;}
02440 case 176:
02441 #line 724 "PSDL.yy"
02442 { yyval = new TAO_PSDL_Switch_Type_Spec (yyvsp[0]); ;
02443 break;}
02444 case 177:
02445 #line 727 "PSDL.yy"
02446 { yyval = new TAO_PSDL_Switch_Type_Spec (yyvsp[0]); ;
02447 break;}
02448 case 178:
02449 #line 730 "PSDL.yy"
02450 { yyval = new TAO_PSDL_Switch_Type_Spec (yyvsp[0]); ;
02451 break;}
02452 case 179:
02453 #line 733 "PSDL.yy"
02454 { yyval = new TAO_PSDL_Switch_Type_Spec (yyvsp[0]); ;
02455 break;}
02456 case 180:
02457 #line 737 "PSDL.yy"
02458 { yyval = new TAO_PSDL_Switch_Body (yyvsp[0]); ;
02459 break;}
02460 case 181:
02461 #line 740 "PSDL.yy"
02462 { yyval = new TAO_PSDL_Switch_Body (yyvsp[-1], yyvsp[0]); ;
02463 break;}
02464 case 182:
02465 #line 744 "PSDL.yy"
02466 { yyval = new TAO_PSDL_Case (yyvsp[-2], yyvsp[-1]); ;
02467 break;}
02468 case 183:
02469 #line 748 "PSDL.yy"
02470 { yyval = new TAO_PSDL_Case_Label (yyvsp[-2], yyvsp[-1]); ;
02471 break;}
02472 case 184:
02473 #line 751 "PSDL.yy"
02474 { yyval = new TAO_PSDL_Case_Label (yyvsp[-1]); ;
02475 break;}
02476 case 185:
02477 #line 754 "PSDL.yy"
02478 { yyval = new TAO_PSDL_Case_Label (yyvsp[-3], yyvsp[-2], yyvsp[0]); ;
02479 break;}
02480 case 186:
02481 #line 757 "PSDL.yy"
02482 { yyval = new TAO_PSDL_Case_Label (yyvsp[-2], yyvsp[0]); ;
02483 break;}
02484 case 187:
02485 #line 761 "PSDL.yy"
02486 { yyval = new TAO_PSDL_Element_Spec (yyvsp[-1], yyvsp[0]); ;
02487 break;}
02488 case 188:
02489 #line 765 "PSDL.yy"
02490 { yyval = new TAO_PSDL_Const_Dcl (yyvsp[-3], yyvsp[-2], yyvsp[0]); ;
02491 break;}
02492 case 189:
02493 #line 769 "PSDL.yy"
02494 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02495 break;}
02496 case 190:
02497 #line 772 "PSDL.yy"
02498 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02499 break;}
02500 case 191:
02501 #line 775 "PSDL.yy"
02502 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02503 break;}
02504 case 192:
02505 #line 778 "PSDL.yy"
02506 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02507 break;}
02508 case 193:
02509 #line 781 "PSDL.yy"
02510 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02511 break;}
02512 case 194:
02513 #line 784 "PSDL.yy"
02514 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02515 break;}
02516 case 195:
02517 #line 787 "PSDL.yy"
02518 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02519 break;}
02520 case 196:
02521 #line 790 "PSDL.yy"
02522 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02523 break;}
02524 case 197:
02525 #line 793 "PSDL.yy"
02526 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02527 break;}
02528 case 198:
02529 #line 796 "PSDL.yy"
02530 { yyval = new TAO_PSDL_Predefined_Type(yyvsp[0]); ;
02531 break;}
02532 case 199:
02533 #line 800 "PSDL.yy"
02534 { yyval = new TAO_PSDL_Const_Exp (yyvsp[0]); ;
02535 break;}
02536 case 200:
02537 #line 804 "PSDL.yy"
02538 { yyval = new TAO_PSDL_Or_Expr (yyvsp[0]); ;
02539 break;}
02540 case 201:
02541 #line 807 "PSDL.yy"
02542 { yyval = new TAO_PSDL_Or_Expr (yyvsp[-2], yyvsp[0]); ;
02543 break;}
02544 case 202:
02545 #line 811 "PSDL.yy"
02546 { yyval = new TAO_PSDL_Xor_Expr (yyvsp[0]); ;
02547 break;}
02548 case 203:
02549 #line 814 "PSDL.yy"
02550 { yyval = new TAO_PSDL_Xor_Expr (yyvsp[-2], yyvsp[0]); ;
02551 break;}
02552 case 204:
02553 #line 818 "PSDL.yy"
02554 { yyval = new TAO_PSDL_And_Expr (yyvsp[0]); ;
02555 break;}
02556 case 205:
02557 #line 821 "PSDL.yy"
02558 { yyval = new TAO_PSDL_And_Expr (yyvsp[-2], yyvsp[0]); ;
02559 break;}
02560 case 206:
02561 #line 825 "PSDL.yy"
02562 { yyval = new TAO_PSDL_Shift_Expr (yyvsp[0]); ;
02563 break;}
02564 case 207:
02565 #line 828 "PSDL.yy"
02566 { yyval = new TAO_PSDL_Shift_Expr (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02567 break;}
02568 case 208:
02569 #line 831 "PSDL.yy"
02570 { yyval = new TAO_PSDL_Shift_Expr (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02571 break;}
02572 case 209:
02573 #line 835 "PSDL.yy"
02574 { yyval = new TAO_PSDL_Add_Expr (yyvsp[0]); ;
02575 break;}
02576 case 210:
02577 #line 838 "PSDL.yy"
02578 { yyval = new TAO_PSDL_Add_Expr (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02579 break;}
02580 case 211:
02581 #line 841 "PSDL.yy"
02582 { yyval = new TAO_PSDL_Add_Expr (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02583 break;}
02584 case 212:
02585 #line 845 "PSDL.yy"
02586 { yyval = new TAO_PSDL_Mult_Expr (yyvsp[0]); ;
02587 break;}
02588 case 213:
02589 #line 848 "PSDL.yy"
02590 { yyval = new TAO_PSDL_Mult_Expr (yyvsp[-2], yyvsp[0]); ;
02591 break;}
02592 case 214:
02593 #line 851 "PSDL.yy"
02594 { yyval = new TAO_PSDL_Mult_Expr (yyvsp[-2], yyvsp[0]); ;
02595 break;}
02596 case 215:
02597 #line 854 "PSDL.yy"
02598 { yyval = new TAO_PSDL_Mult_Expr (yyvsp[-2], yyvsp[0]); ;
02599 break;}
02600 case 216:
02601 #line 858 "PSDL.yy"
02602 { yyval = new TAO_PSDL_Unary_Expr (yyvsp[-1], yyvsp[0]); ;
02603 break;}
02604 case 217:
02605 #line 861 "PSDL.yy"
02606 { yyval = new TAO_PSDL_Unary_Expr (yyvsp[0]); ;
02607 break;}
02608 case 218:
02609 #line 865 "PSDL.yy"
02610 { yyval = yyvsp[0]; ;
02611 break;}
02612 case 219:
02613 #line 868 "PSDL.yy"
02614 { yyval = yyvsp[0]; ;
02615 break;}
02616 case 220:
02617 #line 871 "PSDL.yy"
02618 { yyval = yyvsp[0]; ;
02619 break;}
02620 case 221:
02621 #line 875 "PSDL.yy"
02622 { yyval = new TAO_PSDL_Primary_Expr (yyvsp[0]); ;
02623 break;}
02624 case 222:
02625 #line 878 "PSDL.yy"
02626 { yyval = new TAO_PSDL_Primary_Expr (yyvsp[0]); ;
02627 break;}
02628 case 223:
02629 #line 881 "PSDL.yy"
02630 { yyval = new TAO_PSDL_Primary_Expr (yyvsp[-1]); ;
02631 break;}
02632 case 224:
02633 #line 885 "PSDL.yy"
02634 {
02635 int good_except_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_exception (TAO_PSDL_Scope::instance ()->get_identifier ());
02636 if (good_except_name == -1)
02637 YYABORT;
02638 yyval = yyvsp[0];
02639 ;
02640 break;}
02641 case 225:
02642 #line 894 "PSDL.yy"
02643 {
02644 TAO_PSDL_Scope::instance ()->set_scope ();
02645 yyval = new TAO_PSDL_Except_Dcl (yyvsp[-3], yyvsp[-1]);
02646 ;
02647 break;}
02648 case 226:
02649 #line 900 "PSDL.yy"
02650 {
02651 TAO_PSDL_Scope::instance ()->set_scope ();
02652 yyval = new TAO_PSDL_Except_Dcl (yyvsp[-2]);
02653 ;
02654 break;}
02655 case 227:
02656 #line 907 "PSDL.yy"
02657 {
02658 int good_op_dcl_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_op_dcl (TAO_PSDL_Scope::instance ()->get_identifier ());
02659
02660 if (good_op_dcl_name == -1)
02661 YYABORT;
02662
02663 yyval = yyvsp[0];
02664 ;
02665 break;}
02666 case 228:
02667 #line 918 "PSDL.yy"
02668 { TAO_PSDL_Scope::instance ()->set_scope ();
02669 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-5], yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02670 break;}
02671 case 229:
02672 #line 922 "PSDL.yy"
02673 { TAO_PSDL_Scope::instance ()->set_scope ();
02674 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02675 break;}
02676 case 230:
02677 #line 926 "PSDL.yy"
02678 { TAO_PSDL_Scope::instance ()->set_scope ();
02679 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02680 break;}
02681 case 231:
02682 #line 930 "PSDL.yy"
02683 { TAO_PSDL_Scope::instance ()->set_scope ();
02684 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02685 break;}
02686 case 232:
02687 #line 934 "PSDL.yy"
02688 { TAO_PSDL_Scope::instance ()->set_scope ();
02689 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02690 break;}
02691 case 233:
02692 #line 938 "PSDL.yy"
02693 { TAO_PSDL_Scope::instance ()->set_scope ();
02694 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02695 break;}
02696 case 234:
02697 #line 942 "PSDL.yy"
02698 { TAO_PSDL_Scope::instance ()->set_scope ();
02699 yyval = new TAO_PSDL_Op_Dcl (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02700 break;}
02701 case 235:
02702 #line 947 "PSDL.yy"
02703 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_ONEWAY); ;
02704 break;}
02705 case 236:
02706 #line 951 "PSDL.yy"
02707 { yyval = new TAO_PSDL_Op_Type_Spec (yyvsp[0]); ;
02708 break;}
02709 case 237:
02710 #line 954 "PSDL.yy"
02711 { yyval = new TAO_PSDL_Op_Type_Spec (TAO_PSDL_VOID); ;
02712 break;}
02713 case 238:
02714 #line 958 "PSDL.yy"
02715 { yyval = new TAO_PSDL_Parameter_Dcls (yyvsp[-1]); ;
02716 break;}
02717 case 239:
02718 #line 961 "PSDL.yy"
02719 { yyval = new TAO_PSDL_Parameter_Dcls (); ;
02720 break;}
02721 case 240:
02722 #line 965 "PSDL.yy"
02723 { yyval = new TAO_PSDL_Param_Dcl (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02724 break;}
02725 case 241:
02726 #line 968 "PSDL.yy"
02727 { yyval = new TAO_PSDL_Param_Dcl (yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[0]); ;
02728 break;}
02729 case 242:
02730 #line 972 "PSDL.yy"
02731 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_IN); ;
02732 break;}
02733 case 243:
02734 #line 975 "PSDL.yy"
02735 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_OUT); ;
02736 break;}
02737 case 244:
02738 #line 978 "PSDL.yy"
02739 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_INOUT); ;
02740 break;}
02741 case 245:
02742 #line 982 "PSDL.yy"
02743 { yyval = new TAO_PSDL_Raises_Expr (yyvsp[-1]); ;
02744 break;}
02745 case 246:
02746 #line 985 "PSDL.yy"
02747 { yyval = new TAO_PSDL_Raises_Expr (yyvsp[-3], yyvsp[-2]); ;
02748 break;}
02749 case 247:
02750 #line 989 "PSDL.yy"
02751 { yyval = new TAO_PSDL_Context_Expr (yyvsp[-1]); ;
02752 break;}
02753 case 248:
02754 #line 993 "PSDL.yy"
02755 { yyval = new TAO_PSDL_Param_Type_Spec (yyvsp[0]); ;
02756 break;}
02757 case 249:
02758 #line 996 "PSDL.yy"
02759 { yyval = new TAO_PSDL_Param_Type_Spec (yyvsp[0]); ;
02760 break;}
02761 case 250:
02762 #line 999 "PSDL.yy"
02763 { yyval = new TAO_PSDL_Param_Type_Spec (yyvsp[0]); ;
02764 break;}
02765 case 251:
02766 #line 1002 "PSDL.yy"
02767 { yyval = new TAO_PSDL_Param_Type_Spec (yyvsp[0]); ;
02768 break;}
02769 case 252:
02770 #line 1006 "PSDL.yy"
02771 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[-3], yyvsp[-1]); ;
02772 break;}
02773 case 253:
02774 #line 1010 "PSDL.yy"
02775 { yyval = yyvsp[0]; ;
02776 break;}
02777 case 254:
02778 #line 1014 "PSDL.yy"
02779 { yyval = yyvsp[0]; ;
02780 break;}
02781 case 255:
02782 #line 1018 "PSDL.yy"
02783 { yyval = new TAO_PSDL_Constr_Forward_Decl (yyvsp[-1], yyvsp[0]); ;
02784 break;}
02785 case 256:
02786 #line 1021 "PSDL.yy"
02787 { yyval = new TAO_PSDL_Constr_Forward_Decl (yyvsp[-1], yyvsp[0]); ;
02788 break;}
02789 case 257:
02790 #line 1025 "PSDL.yy"
02791 { yyval = new TAO_PSDL_Interface (yyvsp[0]); ;
02792 break;}
02793 case 258:
02794 #line 1028 "PSDL.yy"
02795 { yyval = new TAO_PSDL_Interface (yyvsp[0]); ;
02796 break;}
02797 case 259:
02798 #line 1032 "PSDL.yy"
02799 {
02800 TAO_PSDL_Scope::instance ()->set_interface_scope ();
02801 yyval = new TAO_PSDL_Interface_Dcl (yyvsp[-3], yyvsp[-1]);
02802 ;
02803 break;}
02804 case 260:
02805 #line 1038 "PSDL.yy"
02806 {
02807 TAO_PSDL_Scope::instance ()->set_interface_scope ();
02808 yyval = new TAO_PSDL_Interface_Dcl (yyvsp[-2]);
02809 ;
02810 break;}
02811 case 261:
02812 #line 1045 "PSDL.yy"
02813 { yyval = new TAO_PSDL_Forward_Dcl (TAO_PSDL_ABSTRACT, yyvsp[0]); ;
02814 break;}
02815 case 262:
02816 #line 1048 "PSDL.yy"
02817 { yyval = new TAO_PSDL_Forward_Dcl (TAO_PSDL_LOCAL, yyvsp[0]); ;
02818 break;}
02819 case 263:
02820 #line 1051 "PSDL.yy"
02821 { yyval = new TAO_PSDL_Forward_Dcl (yyvsp[0]); ;
02822 break;}
02823 case 264:
02824 #line 1055 "PSDL.yy"
02825 {
02826 int good_interface_name = TAO_PSDL_Scope::instance ()->pop_top_scope ()->add_interface (TAO_PSDL_Scope::instance ()->get_identifier ());
02827 if (good_interface_name == -1)
02828 YYABORT;
02829
02830 yyval = yyvsp[0];
02831 ;
02832 break;}
02833 case 265:
02834 #line 1065 "PSDL.yy"
02835 { yyval = new TAO_PSDL_Interface_Header (yyvsp[-1], yyvsp[0]); ;
02836 break;}
02837 case 266:
02838 #line 1068 "PSDL.yy"
02839 { yyval = new TAO_PSDL_Interface_Header (yyvsp[-1], yyvsp[0]); ;
02840 break;}
02841 case 267:
02842 #line 1071 "PSDL.yy"
02843 { yyval = new TAO_PSDL_Interface_Header (yyvsp[0]); ;
02844 break;}
02845 case 268:
02846 #line 1074 "PSDL.yy"
02847 { yyval = new TAO_PSDL_Interface_Header (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02848 break;}
02849 case 269:
02850 #line 1077 "PSDL.yy"
02851 { yyval = new TAO_PSDL_Interface_Header (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02852 break;}
02853 case 270:
02854 #line 1080 "PSDL.yy"
02855 { yyval = new TAO_PSDL_Interface_Header (yyvsp[0], yyvsp[-1]); ;
02856 break;}
02857 case 271:
02858 #line 1084 "PSDL.yy"
02859 { yyval = new TAO_PSDL_Interface_Body (yyvsp[0]); ;
02860 break;}
02861 case 272:
02862 #line 1087 "PSDL.yy"
02863 { yyval = new TAO_PSDL_Interface_Body (yyvsp[-1], yyvsp[0]); ;
02864 break;}
02865 case 273:
02866 #line 1091 "PSDL.yy"
02867 { yyval = new TAO_PSDL_Export_Dcl (yyvsp[-1]); ;
02868 break;}
02869 case 274:
02870 #line 1094 "PSDL.yy"
02871 { yyval = new TAO_PSDL_Export_Dcl (yyvsp[-1]); ;
02872 break;}
02873 case 275:
02874 #line 1097 "PSDL.yy"
02875 { yyval = new TAO_PSDL_Export_Dcl (yyvsp[-1]); ;
02876 break;}
02877 case 276:
02878 #line 1100 "PSDL.yy"
02879 { yyval = new TAO_PSDL_Export_Dcl (yyvsp[-1]); ;
02880 break;}
02881 case 277:
02882 #line 1103 "PSDL.yy"
02883 { yyval = new TAO_PSDL_Export_Dcl (yyvsp[-1]); ;
02884 break;}
02885 case 278:
02886 #line 1108 "PSDL.yy"
02887 { yyval = new TAO_PSDL_Interface_Inheritance_Spec (yyvsp[0]); ;
02888 break;}
02889 case 279:
02890 #line 1112 "PSDL.yy"
02891 { yyval = new TAO_PSDL_Interface_Name (yyvsp[0]); ;
02892 break;}
02893 case 280:
02894 #line 1115 "PSDL.yy"
02895 { yyval = new TAO_PSDL_Interface_Name (yyvsp[-2], yyvsp[-1]); ;
02896 break;}
02897 case 281:
02898 #line 1119 "PSDL.yy"
02899 { yyval = new TAO_PSDL_Scoped_Name (yyvsp[-2], yyvsp[0]); ;
02900 break;}
02901 case 282:
02902 #line 1122 "PSDL.yy"
02903 { yyval = yyvsp[0]; ;
02904 break;}
02905 case 283:
02906 #line 1126 "PSDL.yy"
02907 { yyval = new TAO_PSDL_Scoped_Name (yyvsp[-2], yyvsp[0]); ;
02908 break;}
02909 case 284:
02910 #line 1129 "PSDL.yy"
02911 { yyval = yyvsp[0]; ;
02912 break;}
02913 case 285:
02914 #line 1133 "PSDL.yy"
02915 { yyval = new TAO_PSDL_Value (yyvsp[0]); ;
02916 break;}
02917 case 286:
02918 #line 1136 "PSDL.yy"
02919 { yyval = new TAO_PSDL_Value (yyvsp[0]); ;
02920 break;}
02921 case 287:
02922 #line 1139 "PSDL.yy"
02923 { yyval = new TAO_PSDL_Value (yyvsp[0]); ;
02924 break;}
02925 case 288:
02926 #line 1142 "PSDL.yy"
02927 { yyval = new TAO_PSDL_Value (yyvsp[0]); ;
02928 break;}
02929 case 289:
02930 #line 1146 "PSDL.yy"
02931 { yyval = new TAO_PSDL_Value_Common_Base (yyvsp[0]); ;
02932 break;}
02933 case 290:
02934 #line 1150 "PSDL.yy"
02935 { yyval = new TAO_PSDL_Value_Forward_Dcl (yyvsp[-1], yyvsp[0]); ;
02936 break;}
02937 case 291:
02938 #line 1153 "PSDL.yy"
02939 { yyval = new TAO_PSDL_Value_Forward_Dcl (yyvsp[0]); ;
02940 break;}
02941 case 292:
02942 #line 1157 "PSDL.yy"
02943 { yyval = new TAO_PSDL_Value_Box_Dcl (yyvsp[-1], yyvsp[0]); ;
02944 break;}
02945 case 293:
02946 #line 1161 "PSDL.yy"
02947 { yyval = new TAO_PSDL_Value_Abs_Dcl (yyvsp[-4], yyvsp[-3], yyvsp[-1]); ;
02948 break;}
02949 case 294:
02950 #line 1164 "PSDL.yy"
02951 { yyval = new TAO_PSDL_Value_Abs_Dcl (yyvsp[-3], yyvsp[-1]); ;
02952 break;}
02953 case 295:
02954 #line 1168 "PSDL.yy"
02955 { yyval = new TAO_PSDL_Value_Dcl (yyvsp[-3], yyvsp[-1]); ;
02956 break;}
02957 case 296:
02958 #line 1172 "PSDL.yy"
02959 { yyval = new TAO_PSDL_Value_Header (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
02960 break;}
02961 case 297:
02962 #line 1175 "PSDL.yy"
02963 { yyval = new TAO_PSDL_Value_Header (yyvsp[-1], yyvsp[0]); ;
02964 break;}
02965 case 298:
02966 #line 1178 "PSDL.yy"
02967 { yyval = new TAO_PSDL_Value_Header (yyvsp[-1], yyvsp[0]); ;
02968 break;}
02969 case 299:
02970 #line 1182 "PSDL.yy"
02971 { yyval = new TAO_PSDL_Value_Inheritance_Spec (yyvsp[-3], yyvsp[-2], yyvsp[0]); ;
02972 break;}
02973 case 300:
02974 #line 1185 "PSDL.yy"
02975 { yyval = new TAO_PSDL_Value_Inheritance_Spec (yyvsp[-2], yyvsp[0]); ;
02976 break;}
02977 case 301:
02978 #line 1188 "PSDL.yy"
02979 { yyval = new TAO_PSDL_Value_Inheritance_Spec (yyvsp[0]); ;
02980 break;}
02981 case 302:
02982 #line 1191 "PSDL.yy"
02983 { yyval = new TAO_PSDL_Value_Inheritance_Spec (yyvsp[-1], yyvsp[0]); ;
02984 break;}
02985 case 303:
02986 #line 1194 "PSDL.yy"
02987 { yyval = new TAO_PSDL_Value_Inheritance_Spec (yyvsp[0]); ;
02988 break;}
02989 case 304:
02990 #line 1199 "PSDL.yy"
02991 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_STRING, yyvsp[-1]); ;
02992 break;}
02993 case 305:
02994 #line 1202 "PSDL.yy"
02995 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_STRING); ;
02996 break;}
02997 case 306:
02998 #line 1206 "PSDL.yy"
02999 { yyval = new TAO_PSDL_Predefined_Type (yyvsp[-1]); ;
03000 break;}
03001 case 307:
03002 #line 1209 "PSDL.yy"
03003 { yyval = yyvsp[0]; ;
03004 break;}
03005 case 308:
03006 #line 1213 "PSDL.yy"
03007 { yyval = new TAO_PSDL_Array_Declarator (yyvsp[-1], yyvsp[0]); ;
03008 break;}
03009 case 309:
03010 #line 1217 "PSDL.yy"
03011 { yyval = new TAO_PSDL_Fixed_Array_Size (yyvsp[-1]); ;
03012 break;}
03013 case 310:
03014 #line 1221 "PSDL.yy"
03015 { yyval = new TAO_PSDL_Attr_Dcl (TAO_PSDL_READONLY, yyvsp[-1], yyvsp[0]); ;
03016 break;}
03017 case 311:
03018 #line 1224 "PSDL.yy"
03019 { yyval = new TAO_PSDL_Attr_Dcl (yyvsp[-1], yyvsp[0]); ;
03020 break;}
03021 case 312:
03022 #line 1228 "PSDL.yy"
03023 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_ENUM, yyvsp[-3], yyvsp[-1]); ;
03024 break;}
03025 case 313:
03026 #line 1232 "PSDL.yy"
03027 { yyval = new TAO_PSDL_Enumerator (yyvsp[0]); ;
03028 break;}
03029 case 314:
03030 #line 1235 "PSDL.yy"
03031 { yyval = new TAO_PSDL_Enumerator (yyvsp[-2], yyvsp[0]); ;
03032 break;}
03033 case 315:
03034 #line 1239 "PSDL.yy"
03035 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_SEQUENCE, yyvsp[-3], yyvsp[-1]); ;
03036 break;}
03037 case 316:
03038 #line 1242 "PSDL.yy"
03039 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_SEQUENCE, yyvsp[-1]); ;
03040 break;}
03041 case 317:
03042 #line 1246 "PSDL.yy"
03043 { yyval = yyvsp[0]; ;
03044 break;}
03045 case 318:
03046 #line 1249 "PSDL.yy"
03047 { yyval = yyvsp[0]; ;
03048 break;}
03049 case 319:
03050 #line 1252 "PSDL.yy"
03051 { yyval = yyvsp[0]; ;
03052 break;}
03053 case 320:
03054 #line 1255 "PSDL.yy"
03055 { yyval = yyvsp[0]; ;
03056 break;}
03057 case 321:
03058 #line 1258 "PSDL.yy"
03059 { yyval = yyvsp[0]; ;
03060 break;}
03061 case 322:
03062 #line 1261 "PSDL.yy"
03063 { yyval = yyvsp[0]; ;
03064 break;}
03065 case 323:
03066 #line 1264 "PSDL.yy"
03067 { yyval = yyvsp[0]; ;
03068 break;}
03069 case 324:
03070 #line 1267 "PSDL.yy"
03071 { yyval = yyvsp[0]; ;
03072 break;}
03073 case 325:
03074 #line 1271 "PSDL.yy"
03075 { yyval = yyvsp[0]; ;
03076 break;}
03077 case 326:
03078 #line 1274 "PSDL.yy"
03079 { yyval = yyvsp[0]; ;
03080 break;}
03081 case 327:
03082 #line 1278 "PSDL.yy"
03083 { yyval = yyvsp[0]; ;
03084 break;}
03085 case 328:
03086 #line 1282 "PSDL.yy"
03087 { yyval = yyvsp[0]; ;
03088 break;}
03089 case 329:
03090 #line 1286 "PSDL.yy"
03091 { yyval = yyvsp[0]; ;
03092 break;}
03093 case 330:
03094 #line 1290 "PSDL.yy"
03095 { yyval = yyvsp[0]; ;
03096 break;}
03097 case 331:
03098 #line 1294 "PSDL.yy"
03099 { yyval = yyvsp[0]; ;
03100 break;}
03101 case 332:
03102 #line 1298 "PSDL.yy"
03103 { yyval = yyvsp[0]; ;
03104 break;}
03105 case 333:
03106 #line 1302 "PSDL.yy"
03107 { yyval = yyvsp[0]; ;
03108 break;}
03109 case 334:
03110 #line 1306 "PSDL.yy"
03111 { yyval = new TAO_PSDL_Value_Name (yyvsp[0]); ;
03112 break;}
03113 case 335:
03114 #line 1309 "PSDL.yy"
03115 { yyval = new TAO_PSDL_Value_Name (yyvsp[-2], yyvsp[0]); ;
03116 break;}
03117 case 336:
03118 #line 1313 "PSDL.yy"
03119 { yyval = new TAO_PSDL_Value_Element (yyvsp[0]); ;
03120 break;}
03121 case 337:
03122 #line 1316 "PSDL.yy"
03123 { yyval = new TAO_PSDL_Value_Element (yyvsp[0]); ;
03124 break;}
03125 case 338:
03126 #line 1319 "PSDL.yy"
03127 { yyval = new TAO_PSDL_Value_Element (yyvsp[0]); ;
03128 break;}
03129 case 339:
03130 #line 1323 "PSDL.yy"
03131 { yyval = new TAO_PSDL_State_Member (yyvsp[-3], yyvsp[-2], yyvsp[-1]); ;
03132 break;}
03133 case 340:
03134 #line 1326 "PSDL.yy"
03135 { yyval = new TAO_PSDL_State_Member (yyvsp[-3], yyvsp[-2], yyvsp[-1]); ;
03136 break;}
03137 case 341:
03138 #line 1330 "PSDL.yy"
03139 { yyval = new TAO_PSDL_Init_Dcl (yyvsp[-4], yyvsp[-2]); ;
03140 break;}
03141 case 342:
03142 #line 1333 "PSDL.yy"
03143 { yyval = new TAO_PSDL_Init_Dcl (yyvsp[-3]); ;
03144 break;}
03145 case 343:
03146 #line 1337 "PSDL.yy"
03147 { yyval = new TAO_PSDL_Init_Param_Decls (yyvsp[0]); ;
03148 break;}
03149 case 344:
03150 #line 1340 "PSDL.yy"
03151 { yyval = new TAO_PSDL_Init_Param_Decls (yyvsp[-2], yyvsp[-1]); ;
03152 break;}
03153 case 345:
03154 #line 1344 "PSDL.yy"
03155 { yyval = new TAO_PSDL_Init_Param_Decl (yyvsp[-2], yyvsp[-1], yyvsp[0]); ;
03156 break;}
03157 case 346:
03158 #line 1348 "PSDL.yy"
03159 { yyval = new TAO_PSDL_Predefined_Type (TAO_PSDL_IN); ;
03160 break;}
03161 case 347:
03162 #line 1352 "PSDL.yy"
03163 { yyval = new TAO_PSDL_Positive_Int_Const (yyvsp[0]); ;
03164 break;}
03165 case 348:
03166 #line 1356 "PSDL.yy"
03167 { yyval = new TAO_PSDL_Factory_Dcl (yyvsp[-1], yyvsp[0]); ;
03168 break;}
03169 case 349:
03170 #line 1360 "PSDL.yy"
03171 { yyval = new TAO_PSDL_Factory_Parameters (yyvsp[-1]); ;
03172 break;}
03173 case 350:
03174 #line 1363 "PSDL.yy"
03175 { yyval = new TAO_PSDL_Factory_Parameters (); ;
03176 break;}
03177 }
03178
03179 #line 705 "/usr/share/bison/bison.simple"
03180
03181
03182 yyvsp -= yylen;
03183 yyssp -= yylen;
03184 #if YYLSP_NEEDED
03185 yylsp -= yylen;
03186 #endif
03187
03188 #if YYDEBUG
03189 if (yydebug)
03190 {
03191 short *yyssp1 = yyss - 1;
03192 YYFPRINTF (stderr, "state stack now");
03193 while (yyssp1 != yyssp)
03194 YYFPRINTF (stderr, " %d", *++yyssp1);
03195 YYFPRINTF (stderr, "\n");
03196 }
03197 #endif
03198
03199 *++yyvsp = yyval;
03200 #if YYLSP_NEEDED
03201 *++yylsp = yyloc;
03202 #endif
03203
03204
03205
03206
03207
03208 yyn = yyr1[yyn];
03209
03210 yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
03211 if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
03212 yystate = yytable[yystate];
03213 else
03214 yystate = yydefgoto[yyn - YYNTBASE];
03215
03216 goto yynewstate;
03217
03218
03219
03220
03221
03222 yyerrlab:
03223
03224 if (!yyerrstatus)
03225 {
03226 ++yynerrs;
03227
03228 #ifdef YYERROR_VERBOSE
03229 yyn = yypact[yystate];
03230
03231 if (yyn > YYFLAG && yyn < YYLAST)
03232 {
03233 YYSIZE_T yysize = 0;
03234 char *yymsg;
03235 int yyx, yycount;
03236
03237 yycount = 0;
03238
03239
03240 for (yyx = yyn < 0 ? -yyn : 0;
03241 yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
03242 if (yycheck[yyx + yyn] == yyx)
03243 yysize += yystrlen (yytname[yyx]) + 15, yycount++;
03244 yysize += yystrlen ("parse error, unexpected ") + 1;
03245 yysize += yystrlen (yytname[YYTRANSLATE (yychar)]);
03246 yymsg = (char *) YYSTACK_ALLOC (yysize);
03247 if (yymsg != 0)
03248 {
03249 char *yyp = yystpcpy (yymsg, "parse error, unexpected ");
03250 yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]);
03251
03252 if (yycount < 5)
03253 {
03254 yycount = 0;
03255 for (yyx = yyn < 0 ? -yyn : 0;
03256 yyx < (int) (sizeof (yytname) / sizeof (char *));
03257 yyx++)
03258 if (yycheck[yyx + yyn] == yyx)
03259 {
03260 const char *yyq = ! yycount ? ", expecting " : " or ";
03261 yyp = yystpcpy (yyp, yyq);
03262 yyp = yystpcpy (yyp, yytname[yyx]);
03263 yycount++;
03264 }
03265 }
03266 yyerror (yymsg);
03267 YYSTACK_FREE (yymsg);
03268 }
03269 else
03270 yyerror ("parse error; also virtual memory exhausted");
03271 }
03272 else
03273 #endif
03274 yyerror ("parse error");
03275 }
03276 goto yyerrlab1;
03277
03278
03279
03280
03281
03282 yyerrlab1:
03283 if (yyerrstatus == 3)
03284 {
03285
03286
03287
03288
03289 if (yychar == YYEOF)
03290 YYABORT;
03291 YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
03292 yychar, yytname[yychar1]));
03293 yychar = YYEMPTY;
03294 }
03295
03296
03297
03298
03299 yyerrstatus = 3;
03300
03301 goto yyerrhandle;
03302
03303
03304
03305
03306
03307
03308 yyerrdefault:
03309 #if 0
03310
03311
03312
03313
03314 yyn = yydefact[yystate];
03315 if (yyn)
03316 goto yydefault;
03317 #endif
03318
03319
03320
03321
03322
03323
03324 yyerrpop:
03325 if (yyssp == yyss)
03326 YYABORT;
03327 yyvsp--;
03328 yystate = *--yyssp;
03329 #if YYLSP_NEEDED
03330 yylsp--;
03331 #endif
03332
03333 #if YYDEBUG
03334 if (yydebug)
03335 {
03336 short *yyssp1 = yyss - 1;
03337 YYFPRINTF (stderr, "Error: state stack now");
03338 while (yyssp1 != yyssp)
03339 YYFPRINTF (stderr, " %d", *++yyssp1);
03340 YYFPRINTF (stderr, "\n");
03341 }
03342 #endif
03343
03344
03345
03346
03347 yyerrhandle:
03348 yyn = yypact[yystate];
03349 if (yyn == YYFLAG)
03350 goto yyerrdefault;
03351
03352 yyn += YYTERROR;
03353 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
03354 goto yyerrdefault;
03355
03356 yyn = yytable[yyn];
03357 if (yyn < 0)
03358 {
03359 if (yyn == YYFLAG)
03360 goto yyerrpop;
03361 yyn = -yyn;
03362 goto yyreduce;
03363 }
03364 else if (yyn == 0)
03365 goto yyerrpop;
03366
03367 if (yyn == YYFINAL)
03368 YYACCEPT;
03369
03370 YYDPRINTF ((stderr, "Shifting error token, "));
03371
03372 *++yyvsp = yylval;
03373 #if YYLSP_NEEDED
03374 *++yylsp = yylloc;
03375 #endif
03376
03377 yystate = yyn;
03378 goto yynewstate;
03379
03380
03381
03382
03383
03384 yyacceptlab:
03385 yyresult = 0;
03386 goto yyreturn;
03387
03388
03389
03390
03391 yyabortlab:
03392 yyresult = 1;
03393 goto yyreturn;
03394
03395
03396
03397
03398 yyoverflowlab:
03399 yyerror ("parser stack overflow");
03400 yyresult = 2;
03401
03402
03403 yyreturn:
03404 #ifndef yyoverflow
03405 if (yyss != yyssa)
03406 YYSTACK_FREE (yyss);
03407 #endif
03408 return yyresult;
03409 }
03410 #line 1365 "PSDL.yy"