summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-07-28 15:31:51 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-07-28 15:31:51 +0000
commit303a56ee9d2d4f98ec08311d826bc0411613a39b (patch)
tree99d3f2852f5cf8e6f19fcedf9d0a3ff867fe6fc7
parenta7b4f243939c6c914cc82a569317902b36272a45 (diff)
downloadATCD-303a56ee9d2d4f98ec08311d826bc0411613a39b.tar.gz
ChangeLogTag: Tue Jul 28 15:29:46 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--modules/TAO/ChangeLog8
-rw-r--r--modules/TAO/TAO_IDL/fe/idl.yy136
-rw-r--r--modules/TAO/TAO_IDL/fe/y.tab.cpp1198
3 files changed, 696 insertions, 646 deletions
diff --git a/modules/TAO/ChangeLog b/modules/TAO/ChangeLog
index a7a00ca497b..9d1db7e20a7 100644
--- a/modules/TAO/ChangeLog
+++ b/modules/TAO/ChangeLog
@@ -1,3 +1,11 @@
+Tue Jul 28 15:29:46 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
+
+ * TAO_IDL/fe/idl.yy:
+ * TAO_IDL/fe/y.tab.cpp:
+
+ Fixed parsing mistake that did not allow non-template
+ extended ports in a connector.
+
Tue Jul 28 14:34:46 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
* TAO_IDL/fe/idl.yy:
diff --git a/modules/TAO/TAO_IDL/fe/idl.yy b/modules/TAO/TAO_IDL/fe/idl.yy
index e973f2439a9..f5f79b8762b 100644
--- a/modules/TAO/TAO_IDL/fe/idl.yy
+++ b/modules/TAO/TAO_IDL/fe/idl.yy
@@ -6332,6 +6332,11 @@ extended_uses_decl
;
extended_port_decl
+ : template_port_decl
+ | non_template_port_decl
+ ;
+
+template_port_decl
: IDL_PORT template_inst IDENTIFIER
{
// extended_port_decl : IDL_PORT template_inst IDENTIFIER
@@ -6390,7 +6395,68 @@ extended_port_decl
delete $2;
$2 = 0;
}
- | IDL_PORT scoped_name IDENTIFIER
+ | IDL_MIRRORPORT template_inst IDENTIFIER
+ {
+// | IDL_MIRRORPORT template_inst IDENTIFIER
+ idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen);
+ UTL_Scope *s = idl_global->scopes ().top_non_null ();
+ AST_Decl *d = s->lookup_by_name ($2->name_, true);
+ AST_PortType *pt = 0;
+ AST_PortType::T_ARGLIST *args = 0;
+ bool so_far_so_good = true;
+
+ if (d == 0)
+ {
+ idl_global->err ()->lookup_error ($2->name_);
+ so_far_so_good = false;
+ }
+ else
+ {
+ pt = AST_PortType::narrow_from_decl (d);
+
+ if (pt == 0)
+ {
+ idl_global->err ()->error1 (UTL_Error::EIDL_PORTTYPE_EXPECTED,
+ d);
+ so_far_so_good = false;
+ }
+ else
+ {
+ args =
+ pt->match_arg_names ($2->args_);
+
+ if (args == 0)
+ {
+ so_far_so_good = false;
+ }
+ }
+ }
+
+ if (so_far_so_good)
+ {
+ Identifier id ($3);
+ ACE::strdelete ($3);
+ $3 = 0;
+
+ UTL_ScopedName sn (&id,
+ 0);
+
+ AST_Mirror_Port *mp =
+ idl_global->gen ()->create_mirror_port (&sn,
+ pt,
+ args);
+
+ (void) s->fe_add_mirror_port (mp);
+ }
+
+ $2->destroy ();
+ delete $2;
+ $2 = 0;
+ }
+ ;
+
+non_template_port_decl
+ : IDL_PORT scoped_name IDENTIFIER
{
// extended_port_decl : IDL_PORT scoped_name IDENTIFIER
idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
@@ -6450,64 +6516,6 @@ extended_port_decl
delete $2;
$2 = 0;
}
- | IDL_MIRRORPORT template_inst IDENTIFIER
- {
-// | IDL_MIRRORPORT template_inst IDENTIFIER
- idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen);
- UTL_Scope *s = idl_global->scopes ().top_non_null ();
- AST_Decl *d = s->lookup_by_name ($2->name_, true);
- AST_PortType *pt = 0;
- AST_PortType::T_ARGLIST *args = 0;
- bool so_far_so_good = true;
-
- if (d == 0)
- {
- idl_global->err ()->lookup_error ($2->name_);
- so_far_so_good = false;
- }
- else
- {
- pt = AST_PortType::narrow_from_decl (d);
-
- if (pt == 0)
- {
- idl_global->err ()->error1 (UTL_Error::EIDL_PORTTYPE_EXPECTED,
- d);
- so_far_so_good = false;
- }
- else
- {
- args =
- pt->match_arg_names ($2->args_);
-
- if (args == 0)
- {
- so_far_so_good = false;
- }
- }
- }
-
- if (so_far_so_good)
- {
- Identifier id ($3);
- ACE::strdelete ($3);
- $3 = 0;
-
- UTL_ScopedName sn (&id,
- 0);
-
- AST_Mirror_Port *mp =
- idl_global->gen ()->create_mirror_port (&sn,
- pt,
- args);
-
- (void) s->fe_add_mirror_port (mp);
- }
-
- $2->destroy ();
- delete $2;
- $2 = 0;
- }
| IDL_MIRRORPORT scoped_name IDENTIFIER
{
// | IDL_MIRRORPORT scoped_name IDENTIFIER
@@ -6633,6 +6641,16 @@ connector_export
// ';'
idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
}
+ | non_template_port_decl
+ {
+// | template_extended_port_decl
+ idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
+ }
+ ';'
+ {
+// ';'
+ idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
+ }
| template_extended_port_decl
{
// | template_extended_port_decl
diff --git a/modules/TAO/TAO_IDL/fe/y.tab.cpp b/modules/TAO/TAO_IDL/fe/y.tab.cpp
index fabc88005ce..37d480b44aa 100644
--- a/modules/TAO/TAO_IDL/fe/y.tab.cpp
+++ b/modules/TAO/TAO_IDL/fe/y.tab.cpp
@@ -599,16 +599,16 @@ union tao_yyalloc
/* TAO_YYFINAL -- State number of the termination state. */
#define TAO_YYFINAL 3
/* TAO_YYLAST -- Last index in TAO_YYTABLE. */
-#define TAO_YYLAST 1239
+#define TAO_YYLAST 1264
/* TAO_YYNTOKENS -- Number of terminals. */
#define TAO_YYNTOKENS 107
/* TAO_YYNNTS -- Number of nonterminals. */
-#define TAO_YYNNTS 372
+#define TAO_YYNNTS 375
/* TAO_YYNRULES -- Number of rules. */
-#define TAO_YYNRULES 555
+#define TAO_YYNRULES 559
/* TAO_YYNRULES -- Number of states. */
-#define TAO_YYNSTATES 802
+#define TAO_YYNSTATES 809
/* TAO_YYTRANSLATE(TAO_YYLEX) -- Bison symbol number corresponding to TAO_YYLEX. */
#define TAO_YYUNDEFTOK 2
@@ -715,9 +715,9 @@ static const tao_yytype_uint16 tao_yyprhs[] =
1255, 1262, 1263, 1268, 1269, 1272, 1275, 1276, 1279, 1283,
1284, 1289, 1292, 1296, 1297, 1299, 1300, 1301, 1302, 1303,
1304, 1316, 1318, 1319, 1322, 1325, 1326, 1327, 1331, 1332,
- 1336, 1338, 1342, 1344, 1348, 1352, 1356, 1360, 1364, 1369,
- 1372, 1377, 1381, 1384, 1387, 1388, 1389, 1393, 1394, 1398,
- 1399, 1403, 1404, 1408, 1411, 1414
+ 1336, 1338, 1342, 1344, 1348, 1350, 1352, 1356, 1360, 1364,
+ 1368, 1373, 1376, 1381, 1385, 1388, 1391, 1392, 1393, 1397,
+ 1398, 1402, 1403, 1407, 1408, 1412, 1413, 1417, 1420, 1423
};
/* TAO_YYRHS -- A `-1'-separated list of the rules' RHS. */
@@ -730,7 +730,7 @@ static const tao_yytype_int16 tao_yyrhs[] =
433, 117, 86, -1, -1, 126, 118, 86, -1, -1,
141, 119, 86, -1, -1, 361, 120, 86, -1, -1,
389, 121, 86, -1, -1, 414, 122, 86, -1, -1,
- 451, 123, 86, -1, -1, 467, 124, 86, -1, -1,
+ 451, 123, 86, -1, -1, 469, 124, 86, -1, -1,
1, 125, 86, -1, -1, -1, -1, -1, 5, 127,
3, 128, 87, 129, 109, 130, 88, -1, 132, -1,
179, -1, -1, -1, -1, 138, 133, 87, 134, 162,
@@ -857,14 +857,15 @@ static const tao_yytype_int16 tao_yyrhs[] =
87, 455, 458, 456, 88, -1, 438, -1, -1, 460,
459, -1, 459, 460, -1, -1, -1, 463, 461, 86,
-1, -1, 464, 462, 86, -1, 381, -1, 60, 447,
- 3, -1, 383, -1, 384, 447, 3, -1, 69, 466,
- 3, -1, 69, 175, 3, -1, 70, 466, 3, -1,
- 70, 175, 3, -1, 175, 104, 172, 103, -1, 468,
- 469, -1, 72, 3, 457, 370, -1, 87, 470, 88,
- -1, 472, 471, -1, 471, 472, -1, -1, -1, 381,
- 473, 86, -1, -1, 383, 474, 86, -1, -1, 297,
- 475, 86, -1, -1, 477, 476, 86, -1, 69, 478,
- -1, 70, 478, -1, 447, 3, -1
+ 3, -1, 383, -1, 384, 447, 3, -1, 466, -1,
+ 467, -1, 69, 468, 3, -1, 70, 468, 3, -1,
+ 69, 175, 3, -1, 70, 175, 3, -1, 175, 104,
+ 172, 103, -1, 470, 471, -1, 72, 3, 457, 370,
+ -1, 87, 472, 88, -1, 474, 473, -1, 473, 474,
+ -1, -1, -1, 381, 475, 86, -1, -1, 383, 476,
+ 86, -1, -1, 297, 477, 86, -1, -1, 467, 478,
+ 86, -1, -1, 480, 479, 86, -1, 69, 481, -1,
+ 70, 481, -1, 447, 3, -1
};
/* TAO_YYRLINE[TAO_YYN] -- source line where rule number TAO_YYN was defined. */
@@ -923,9 +924,9 @@ static const tao_yytype_uint16 tao_yyrline[] =
5926, 5955, 5954, 5976, 5983, 5997, 6003, 6010, 6029, 6046,
6053, 6063, 6074, 6098, 6105, 6116, 6121, 6126, 6147, 6152,
6115, 6167, 6173, 6180, 6187, 6192, 6199, 6198, 6207, 6206,
- 6217, 6222, 6276, 6281, 6335, 6393, 6453, 6511, 6574, 6585,
- 6589, 6593, 6597, 6601, 6602, 6607, 6606, 6617, 6616, 6627,
- 6626, 6637, 6636, 6653, 6654, 6658
+ 6217, 6222, 6276, 6281, 6335, 6336, 6340, 6398, 6459, 6519,
+ 6582, 6593, 6597, 6601, 6605, 6609, 6610, 6615, 6614, 6625,
+ 6624, 6635, 6634, 6645, 6644, 6655, 6654, 6671, 6672, 6676
};
#endif
@@ -1026,10 +1027,11 @@ static const char *const tao_yytname[] =
"@171", "@172", "@173", "@174", "opt_template_params",
"at_least_one_port_export", "port_exports", "port_export", "@175",
"@176", "extended_provides_decl", "extended_uses_decl",
- "extended_port_decl", "template_inst", "connector_decl",
- "connector_header", "connector_body", "at_least_one_connector_export",
- "connector_exports", "connector_export", "@177", "@178", "@179", "@180",
- "template_extended_port_decl", "template_ref_decl", 0
+ "extended_port_decl", "template_port_decl", "non_template_port_decl",
+ "template_inst", "connector_decl", "connector_header", "connector_body",
+ "at_least_one_connector_export", "connector_exports", "connector_export",
+ "@177", "@178", "@179", "@180", "@181", "template_extended_port_decl",
+ "template_ref_decl", 0
};
#endif
@@ -1108,9 +1110,9 @@ static const tao_yytype_uint16 tao_yyr1[] =
438, 442, 441, 441, 443, 444, 444, 445, 446, 446,
447, 448, 449, 449, 450, 452, 453, 454, 455, 456,
451, 457, 457, 458, 459, 459, 461, 460, 462, 460,
- 463, 463, 464, 464, 465, 465, 465, 465, 466, 467,
- 468, 469, 470, 471, 471, 473, 472, 474, 472, 475,
- 472, 476, 472, 477, 477, 478
+ 463, 463, 464, 464, 465, 465, 466, 466, 467, 467,
+ 468, 469, 470, 471, 472, 473, 473, 475, 474, 476,
+ 474, 477, 474, 478, 474, 479, 474, 480, 480, 481
};
/* TAO_YYR2[TAO_YYN] -- Number of symbols composing right hand side of rule TAO_YYN. */
@@ -1169,9 +1171,9 @@ static const tao_yytype_uint8 tao_yyr2[] =
6, 0, 4, 0, 2, 2, 0, 2, 3, 0,
4, 2, 3, 0, 1, 0, 0, 0, 0, 0,
11, 1, 0, 2, 2, 0, 0, 3, 0, 3,
- 1, 3, 1, 3, 3, 3, 3, 3, 4, 2,
- 4, 3, 2, 2, 0, 0, 3, 0, 3, 0,
- 3, 0, 3, 2, 2, 2
+ 1, 3, 1, 3, 1, 1, 3, 3, 3, 3,
+ 4, 2, 4, 3, 2, 2, 0, 0, 3, 0,
+ 3, 0, 3, 0, 3, 0, 3, 2, 2, 2
};
/* TAO_YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
@@ -1196,7 +1198,7 @@ static const tao_yytype_uint16 tao_yydefact[] =
182, 184, 183, 186, 187, 228, 191, 0, 192, 193,
188, 0, 189, 297, 190, 302, 0, 0, 0, 244,
0, 0, 0, 0, 0, 0, 0, 0, 477, 470,
- 479, 0, 0, 0, 0, 0, 539, 34, 130, 118,
+ 479, 0, 0, 0, 0, 0, 541, 34, 130, 118,
122, 126, 127, 123, 124, 125, 128, 129, 36, 47,
167, 173, 227, 243, 278, 325, 49, 474, 50, 0,
475, 71, 406, 436, 0, 392, 111, 393, 516, 521,
@@ -1204,62 +1206,62 @@ static const tao_yytype_uint16 tao_yydefact[] =
61, 211, 218, 213, 215, 0, 75, 287, 290, 294,
299, 12, 6, 229, 0, 14, 8, 10, 24, 398,
26, 447, 434, 28, 75, 0, 0, 18, 494, 30,
- 32, 314, 319, 0, 429, 0, 0, 549, 312, 313,
- 545, 547, 0, 0, 544, 551, 0, 0, 0, 0,
- 0, 65, 404, 402, 444, 110, 0, 522, 540, 0,
- 491, 489, 486, 490, 492, 487, 485, 488, 0, 503,
- 0, 505, 509, 87, 80, 214, 292, 0, 69, 0,
- 0, 0, 235, 245, 408, 451, 478, 471, 480, 87,
- 0, 0, 425, 424, 0, 428, 427, 0, 553, 554,
- 0, 0, 0, 0, 541, 542, 0, 119, 37, 206,
- 174, 199, 200, 201, 207, 279, 326, 87, 0, 75,
- 442, 437, 112, 517, 52, 107, 504, 499, 0, 507,
- 0, 0, 0, 74, 156, 157, 158, 160, 162, 163,
- 164, 161, 159, 0, 0, 0, 0, 153, 165, 132,
- 133, 135, 137, 139, 142, 145, 149, 154, 288, 295,
- 300, 230, 234, 0, 0, 399, 0, 87, 80, 0,
- 315, 368, 365, 366, 367, 320, 423, 555, 550, 546,
- 548, 426, 543, 552, 0, 4, 0, 196, 0, 234,
- 0, 405, 403, 0, 75, 0, 104, 501, 0, 514,
- 0, 513, 0, 102, 334, 335, 0, 86, 94, 88,
- 98, 96, 100, 0, 90, 92, 339, 0, 0, 0,
- 79, 81, 82, 0, 293, 150, 151, 152, 0, 0,
+ 32, 314, 319, 0, 429, 0, 0, 551, 312, 313,
+ 547, 549, 0, 553, 0, 546, 555, 0, 0, 0,
+ 0, 0, 65, 404, 402, 444, 110, 0, 522, 542,
+ 0, 491, 489, 486, 490, 492, 487, 485, 488, 0,
+ 503, 0, 505, 509, 87, 80, 214, 292, 0, 69,
+ 0, 0, 0, 235, 245, 408, 451, 478, 471, 480,
+ 87, 0, 0, 425, 424, 0, 428, 427, 0, 0,
+ 557, 0, 558, 0, 0, 0, 0, 0, 543, 544,
+ 0, 119, 37, 206, 174, 199, 200, 201, 207, 279,
+ 326, 87, 0, 75, 442, 437, 112, 517, 52, 107,
+ 504, 499, 0, 507, 0, 0, 0, 74, 156, 157,
+ 158, 160, 162, 163, 164, 161, 159, 0, 0, 0,
+ 0, 153, 165, 132, 133, 135, 137, 139, 142, 145,
+ 149, 154, 288, 295, 300, 230, 234, 0, 0, 399,
+ 0, 87, 80, 0, 315, 368, 365, 366, 367, 320,
+ 423, 538, 559, 539, 552, 548, 550, 426, 554, 545,
+ 556, 0, 4, 0, 196, 0, 234, 0, 405, 403,
+ 0, 75, 0, 104, 501, 0, 514, 0, 513, 0,
+ 102, 334, 335, 0, 86, 94, 88, 98, 96, 100,
+ 0, 90, 92, 339, 0, 0, 0, 79, 81, 82,
+ 0, 293, 150, 151, 152, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 235, 240, 237, 236, 210, 256, 251,
- 252, 253, 254, 246, 255, 0, 0, 0, 0, 0,
- 419, 0, 407, 409, 411, 413, 415, 417, 421, 0,
- 0, 452, 0, 450, 453, 455, 0, 0, 0, 0,
- 0, 120, 0, 309, 305, 308, 197, 286, 280, 285,
- 235, 0, 443, 438, 518, 105, 0, 500, 510, 511,
- 508, 0, 45, 0, 0, 0, 0, 0, 338, 329,
- 337, 0, 0, 0, 85, 84, 63, 83, 155, 134,
- 136, 138, 140, 141, 143, 144, 146, 147, 148, 289,
- 296, 301, 231, 233, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 400, 0, 0, 0, 0,
- 0, 0, 457, 460, 449, 0, 0, 0, 0, 496,
- 316, 321, 205, 0, 0, 0, 306, 0, 0, 282,
- 0, 67, 0, 0, 0, 502, 0, 103, 95, 89,
- 99, 97, 101, 0, 91, 93, 340, 241, 238, 247,
- 432, 430, 431, 535, 0, 534, 537, 536, 420, 410,
- 412, 414, 416, 418, 422, 0, 0, 454, 456, 473,
- 482, 0, 379, 202, 121, 131, 39, 310, 307, 198,
- 281, 283, 328, 439, 0, 530, 532, 0, 519, 525,
- 526, 528, 106, 512, 330, 0, 0, 0, 0, 343,
- 458, 461, 317, 376, 322, 203, 0, 0, 0, 424,
- 0, 0, 0, 523, 0, 0, 0, 341, 239, 248,
- 538, 0, 0, 375, 375, 375, 0, 383, 0, 311,
- 284, 440, 531, 533, 520, 524, 527, 529, 356, 331,
- 375, 0, 344, 351, 0, 350, 372, 459, 462, 318,
- 377, 380, 323, 204, 446, 0, 0, 375, 342, 263,
- 270, 268, 249, 259, 260, 267, 0, 346, 347, 0,
- 0, 0, 0, 441, 355, 369, 370, 371, 0, 361,
- 362, 332, 0, 0, 0, 0, 0, 0, 265, 352,
- 348, 373, 0, 381, 445, 357, 358, 0, 387, 264,
- 271, 269, 250, 258, 273, 261, 266, 0, 0, 0,
- 378, 0, 359, 363, 384, 333, 0, 0, 0, 353,
- 349, 0, 0, 0, 0, 0, 272, 274, 262, 374,
- 382, 360, 364, 385, 0, 391, 0, 388, 386, 389,
- 0, 390
+ 235, 240, 237, 236, 210, 256, 251, 252, 253, 254,
+ 246, 255, 0, 0, 0, 0, 0, 419, 0, 407,
+ 409, 411, 413, 415, 417, 421, 534, 535, 0, 0,
+ 452, 0, 450, 453, 455, 0, 0, 0, 0, 0,
+ 120, 0, 309, 305, 308, 197, 286, 280, 285, 235,
+ 0, 443, 438, 518, 105, 0, 500, 510, 511, 508,
+ 0, 45, 0, 0, 0, 0, 0, 338, 329, 337,
+ 0, 0, 0, 85, 84, 63, 83, 155, 134, 136,
+ 138, 140, 141, 143, 144, 146, 147, 148, 289, 296,
+ 301, 231, 233, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 400, 0, 0, 0, 0, 0,
+ 0, 457, 460, 449, 0, 0, 0, 0, 496, 316,
+ 321, 205, 0, 0, 0, 306, 0, 0, 282, 0,
+ 67, 0, 0, 0, 502, 0, 103, 95, 89, 99,
+ 97, 101, 0, 91, 93, 340, 241, 238, 247, 432,
+ 430, 431, 0, 536, 537, 420, 410, 412, 414, 416,
+ 418, 422, 0, 0, 454, 456, 473, 482, 0, 379,
+ 202, 121, 131, 39, 310, 307, 198, 281, 283, 328,
+ 439, 0, 530, 532, 0, 519, 525, 526, 528, 106,
+ 512, 330, 0, 0, 0, 0, 343, 458, 461, 317,
+ 376, 322, 203, 0, 0, 0, 424, 0, 0, 0,
+ 523, 0, 0, 0, 341, 239, 248, 540, 0, 0,
+ 375, 375, 375, 0, 383, 0, 311, 284, 440, 531,
+ 533, 520, 524, 527, 529, 356, 331, 375, 0, 344,
+ 351, 0, 350, 372, 459, 462, 318, 377, 380, 323,
+ 204, 446, 0, 0, 375, 342, 263, 270, 268, 249,
+ 259, 260, 267, 0, 346, 347, 0, 0, 0, 0,
+ 441, 355, 369, 370, 371, 0, 361, 362, 332, 0,
+ 0, 0, 0, 0, 0, 265, 352, 348, 373, 0,
+ 381, 445, 357, 358, 0, 387, 264, 271, 269, 250,
+ 258, 273, 261, 266, 0, 0, 0, 378, 0, 359,
+ 363, 384, 333, 0, 0, 0, 353, 349, 0, 0,
+ 0, 0, 0, 272, 274, 262, 374, 382, 360, 364,
+ 385, 0, 391, 0, 388, 386, 389, 0, 390
};
/* TAO_YYDEFGOTO[NTERM-NUM]. */
@@ -1267,173 +1269,173 @@ static const tao_yytype_int16 tao_yydefgoto[] =
{
-1, 1, 2, 25, 157, 161, 162, 156, 160, 105,
171, 104, 111, 163, 165, 167, 173, 174, 74, 26,
- 76, 267, 405, 584, 27, 28, 110, 293, 426, 29,
- 77, 30, 128, 279, 31, 32, 33, 112, 294, 439,
- 34, 199, 337, 511, 35, 226, 36, 94, 214, 298,
- 37, 38, 351, 440, 441, 350, 427, 524, 531, 532,
- 523, 526, 525, 527, 521, 344, 416, 594, 367, 204,
- 276, 100, 39, 428, 75, 266, 404, 583, 179, 634,
- 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
- 378, 429, 78, 190, 268, 465, 131, 132, 133, 134,
- 42, 330, 407, 587, 331, 581, 633, 688, 332, 333,
+ 76, 268, 412, 593, 27, 28, 110, 294, 433, 29,
+ 77, 30, 128, 280, 31, 32, 33, 112, 295, 446,
+ 34, 199, 341, 520, 35, 226, 36, 94, 214, 299,
+ 37, 38, 355, 447, 448, 354, 434, 533, 540, 541,
+ 532, 535, 534, 536, 530, 348, 423, 603, 371, 204,
+ 277, 100, 39, 435, 75, 267, 411, 592, 179, 641,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 436, 78, 190, 269, 472, 131, 132, 133, 134,
+ 42, 334, 414, 596, 335, 590, 640, 695, 336, 337,
135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
- 43, 79, 44, 158, 302, 462, 381, 463, 553, 383,
- 466, 555, 656, 554, 45, 80, 46, 234, 384, 556,
- 657, 701, 745, 473, 722, 746, 723, 747, 778, 742,
- 724, 748, 725, 744, 743, 776, 765, 777, 47, 48,
- 49, 81, 269, 408, 588, 508, 589, 667, 509, 150,
- 299, 459, 151, 225, 352, 152, 300, 460, 153, 154,
- 301, 461, 155, 334, 406, 504, 586, 505, 585, 666,
- 430, 258, 310, 499, 631, 685, 259, 311, 500, 632,
- 687, 431, 82, 270, 409, 590, 432, 603, 676, 717,
- 758, 433, 529, 443, 533, 655, 700, 660, 681, 682,
- 704, 728, 768, 705, 726, 767, 699, 715, 716, 738,
- 756, 783, 739, 757, 784, 395, 740, 707, 729, 769,
- 664, 686, 730, 712, 731, 771, 775, 785, 794, 796,
- 797, 800, 434, 435, 53, 54, 55, 164, 304, 481,
- 56, 202, 339, 273, 338, 385, 482, 566, 567, 568,
- 569, 570, 564, 571, 260, 314, 261, 262, 316, 485,
- 486, 487, 57, 166, 58, 97, 274, 414, 592, 668,
- 714, 341, 413, 733, 242, 305, 492, 386, 493, 575,
- 576, 494, 625, 683, 495, 626, 684, 59, 60, 61,
- 62, 63, 245, 387, 577, 64, 65, 66, 169, 244,
- 67, 246, 388, 578, 68, 288, 69, 172, 309, 498,
- 70, 209, 215, 418, 347, 516, 289, 217, 291, 349,
- 317, 420, 519, 421, 71, 102, 277, 415, 593, 672,
- 210, 648, 673, 649, 674, 675, 650, 651, 488, 561,
- 72, 73, 176, 263, 325, 264, 321, 322, 320, 326,
- 265, 318
+ 43, 79, 44, 158, 303, 469, 385, 470, 562, 387,
+ 473, 564, 663, 563, 45, 80, 46, 234, 388, 565,
+ 664, 708, 752, 480, 729, 753, 730, 754, 785, 749,
+ 731, 755, 732, 751, 750, 783, 772, 784, 47, 48,
+ 49, 81, 270, 415, 597, 517, 598, 674, 518, 150,
+ 300, 466, 151, 225, 356, 152, 301, 467, 153, 154,
+ 302, 468, 155, 338, 413, 513, 595, 514, 594, 673,
+ 437, 258, 311, 508, 638, 692, 259, 312, 509, 639,
+ 694, 438, 82, 271, 416, 599, 439, 612, 683, 724,
+ 765, 440, 538, 450, 542, 662, 707, 667, 688, 689,
+ 711, 735, 775, 712, 733, 774, 706, 722, 723, 745,
+ 763, 790, 746, 764, 791, 399, 747, 714, 736, 776,
+ 671, 693, 737, 719, 738, 778, 782, 792, 801, 803,
+ 804, 807, 441, 442, 53, 54, 55, 164, 305, 488,
+ 56, 202, 343, 274, 342, 389, 489, 575, 576, 577,
+ 578, 579, 573, 580, 260, 315, 261, 262, 317, 492,
+ 493, 494, 57, 166, 58, 97, 275, 421, 601, 675,
+ 721, 345, 420, 740, 242, 306, 501, 390, 502, 584,
+ 585, 503, 632, 690, 504, 633, 691, 59, 60, 61,
+ 62, 63, 245, 391, 586, 64, 65, 66, 169, 244,
+ 67, 246, 392, 587, 68, 289, 69, 172, 310, 507,
+ 70, 209, 215, 425, 351, 525, 290, 217, 292, 353,
+ 319, 427, 528, 428, 71, 102, 278, 422, 602, 679,
+ 210, 655, 680, 656, 681, 682, 657, 658, 495, 496,
+ 263, 570, 72, 73, 176, 264, 329, 265, 324, 325,
+ 323, 327, 330, 266, 320
};
/* TAO_YYPACT[STATE-NUM] -- Index in TAO_YYTABLE of the portion describing
STATE-NUM. */
-#define TAO_YYPACT_NINF -585
+#define TAO_YYPACT_NINF -645
static const tao_yytype_int16 tao_yypact[] =
{
- -585, 65, 1167, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, 52, 77, 55, 5, -585, 52, 52,
- -585, 37, 37, -585, 74, -585, -585, -585, -585, 76,
- -585, -585, -585, -585, -585, -585, 366, -585, -585, -585,
- -585, -585, -585, 19, -585, 63, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 20, -585, -585, -585, 20, -585,
- -585, -585, -585, 28, 59, 591, 164, 52, 512, 52,
- 52, 52, 52, -585, -585, -585, 24, 52, 25, -585,
- 88, 52, -585, 20, 52, 83, 90, 52, -585, -31,
- -585, 22, 170, 78, 101, 124, 150, -585, -585, 116,
- 158, 144, 167, 33, -585, 181, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, 177,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, 63, -585, -585,
- -585, -28, -585, 160, -585, 172, 176, 188, 190, -585,
- 193, 209, 213, 214, 217, 219, 221, 220, -585, -585,
- -585, 223, 226, 228, 229, 196, -585, -585, 177, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, 230, -585, 236,
- -585, -585, 235, -585, 52, -585, -585, -585, -585, -585,
- 235, -585, -585, -585, -585, 155, 37, -585, -585, -585,
- -585, -585, -585, 309, -585, 222, 278, -585, -585, -585,
- -585, -585, -585, -585, 227, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 278, 240, 243, -585, -585, -585,
- -585, -585, -585, 87, 271, 37, 37, -585, -585, -585,
- -585, -585, 87, 244, -585, -585, 52, 247, 52, 253,
- 254, -585, -585, -585, 255, -585, 52, 78, -585, 37,
- -585, -585, -585, -585, -585, -585, -585, -585, 328, -585,
- -18, -585, -585, -585, -585, -585, -585, 37, -585, 57,
- 57, 57, -585, -585, -585, -585, -585, -585, -585, -585,
- 311, 628, -585, 177, 52, -585, -585, 340, -585, -585,
- 259, 260, 261, 52, -585, 196, 262, -585, -585, 245,
- -585, -585, -585, -585, -585, -585, -585, -585, 37, 278,
- -585, -585, -585, -585, -585, 177, -585, 265, 354, 269,
- 929, 546, 272, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, 45, 45, 45, 57, 177, -585, 268,
- 270, 267, 112, 1, 119, -585, -585, -585, -585, -585,
- -585, -585, -585, 1140, 79, 242, 847, -585, -585, 964,
- -585, 177, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 276, -585, 266, 280, 369, -585,
- 1046, 177, -585, 37, 278, 286, 298, -585, 290, -585,
- 292, -585, 37, -585, -585, -585, 308, -585, -585, -585,
- -585, -585, -585, 412, -585, -585, -585, 1140, 1140, 310,
- -585, -585, -585, 313, -585, -585, -585, -585, 295, 57,
- 57, 57, 57, 57, 57, 57, 57, 57, 57, 297,
- 299, 301, 345, 347, -585, -585, -585, 431, 177, -585,
- -585, -585, -585, -585, -585, 37, 37, 37, 37, 37,
- -585, 352, -585, -585, -585, -585, -585, -585, -585, 52,
- 52, -585, 353, -585, -585, -585, 1081, 765, 355, 628,
- 52, -585, 143, -585, -585, -585, -585, -585, -585, -585,
- 356, 357, 177, -585, -585, -585, 155, -585, -585, 358,
- -585, 363, -585, 364, 375, 376, 377, 378, -585, -585,
- -585, 379, 380, 439, -585, -585, -585, -585, -585, 270,
- 267, 112, 1, 1, 119, 119, -585, -585, -585, -585,
- -585, -585, -585, -585, 382, 52, 367, 73, 73, 73,
- 35, 467, 36, 468, 386, -585, 387, 388, 389, 392,
- 393, 395, -585, -585, -585, 396, 397, 398, 400, -585,
- -585, -585, -585, 57, 401, 57, 266, 52, 402, 394,
- 403, -585, 419, 47, 37, -585, 354, -585, -585, -585,
- -585, -585, -585, 492, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 37, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, 399, 399, -585, -585, -585,
- -585, 52, 441, 407, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 87, -585, -585, 87, -585, -585,
- -585, -585, 177, -585, -585, 399, 415, 411, 404, 469,
- -585, -585, -585, -585, -585, -585, 405, 369, 37, -18,
- 499, 500, 417, 47, 420, 422, 408, -585, -585, -585,
- -585, 410, 475, 479, 479, 479, 433, 477, 52, -585,
- -585, 177, -585, -585, -585, -585, -585, -585, 438, -585,
- 479, 51, -585, -585, 446, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, 482, 449, 212, 479, -585, -585,
- -585, -585, -585, -585, -585, -585, 628, -585, 453, 451,
- 37, 480, 37, -585, -585, -585, -585, -585, 466, -585,
- -585, -585, 484, 57, 493, 495, 71, 512, 173, -585,
- -585, -585, 483, -585, 177, -585, 494, 628, 548, -585,
- -585, -585, -585, -585, -585, -585, -585, 52, 475, 37,
- -585, 37, -585, -585, -585, -585, 507, 52, 502, -585,
- -585, 487, 496, 212, 52, 510, -585, -585, -585, -585,
- -585, -585, -585, -585, 521, -585, 511, 522, -585, -585,
- 538, -585
+ -645, 45, 1192, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, 67, 70, 109, 114, -645, 67, 67,
+ -645, 39, 39, -645, 103, -645, -645, -645, -645, 136,
+ -645, -645, -645, -645, -645, -645, 84, -645, -645, -645,
+ -645, -645, -645, 28, -645, 94, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, 55, -645, -645, -645, 55, -645,
+ -645, -645, -645, 79, 89, 467, 179, 67, 521, 67,
+ 67, 67, 67, -645, -645, -645, 48, 67, 143, -645,
+ 155, 67, -645, 55, 67, 124, 153, 67, -645, 102,
+ -645, 137, 185, 149, 172, 186, 244, -645, -645, 216,
+ 221, 223, 224, 249, -645, 46, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, 229,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, 94, -645, -645,
+ -645, -28, -645, 208, -645, 210, 231, 232, 228, -645,
+ 235, 236, 239, 241, 242, 245, 243, 246, -645, -645,
+ -645, 248, 255, 250, 257, 99, -645, -645, 229, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, 259, -645, 261,
+ -645, -645, 230, -645, 67, -645, -645, -645, -645, -645,
+ 230, -645, -645, -645, -645, 206, 39, -645, -645, -645,
+ -645, -645, -645, 320, -645, 253, 286, -645, -645, -645,
+ -645, -645, -645, -645, 234, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, 286, 262, 263, -645, -645, -645,
+ -645, -645, -645, 58, 288, 39, 39, -645, -645, -645,
+ -645, -645, 58, -645, 264, -645, -645, 67, 267, 67,
+ 274, 276, -645, -645, -645, 270, -645, 67, 149, -645,
+ 39, -645, -645, -645, -645, -645, -645, -645, -645, 348,
+ -645, 9, -645, -645, -645, -645, -645, -645, 39, -645,
+ 76, 76, 76, -645, -645, -645, -645, -645, -645, -645,
+ -645, 333, 636, -645, 229, 67, -645, -645, 31, 362,
+ -645, 36, -645, 281, 285, 290, 67, 305, -645, 99,
+ 310, -645, -645, 269, -645, -645, -645, -645, -645, -645,
+ -645, -645, 39, 286, -645, -645, -645, -645, -645, 229,
+ -645, 307, 395, 309, 936, 555, 272, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, 47, 47, 47,
+ 76, 229, -645, 308, 312, 313, 6, 51, 168, -645,
+ -645, -645, -645, -645, -645, -645, -645, 369, 171, 561,
+ 854, -645, -645, 971, -645, 229, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, 311, -645, 298, 316, 405, -645, 1053, 229, -645,
+ 39, 286, 322, 321, -645, 324, -645, 325, -645, 39,
+ -645, -645, -645, 326, -645, -645, -645, -645, -645, -645,
+ 190, -645, -645, -645, 369, 369, 341, -645, -645, -645,
+ 344, -645, -645, -645, -645, 329, 76, 76, 76, 76,
+ 76, 76, 76, 76, 76, 76, 330, 331, 332, 349,
+ 350, -645, -645, -645, 424, 229, -645, -645, -645, -645,
+ -645, -645, 39, 39, 39, 39, 39, -645, 351, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, 67, 67,
+ -645, 352, -645, -645, -645, 1088, 772, 356, 636, 67,
+ -645, 1138, -645, -645, -645, -645, -645, -645, -645, 357,
+ 358, 229, -645, -645, -645, 206, -645, -645, 346, -645,
+ 361, -645, 363, 365, 366, 367, 368, -645, -645, -645,
+ 370, 372, 445, -645, -645, -645, -645, -645, 312, 313,
+ 6, 51, 51, 168, 168, -645, -645, -645, -645, -645,
+ -645, -645, -645, 375, 67, 353, 62, 62, 62, 37,
+ 459, 38, 465, 383, -645, 385, 386, 388, 401, 402,
+ 404, -645, -645, -645, 408, 409, 403, 411, -645, -645,
+ -645, -645, 76, 413, 76, 298, 67, 414, 407, 415,
+ -645, 438, 173, 39, -645, 395, -645, -645, -645, -645,
+ -645, -645, 502, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, 39, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, 406, 406, -645, -645, -645, -645, 67, 451,
+ 419, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, 58, -645, -645, 58, -645, -645, -645, -645, 229,
+ -645, -645, 406, 425, 423, 410, 477, -645, -645, -645,
+ -645, -645, -645, 412, 405, 39, 9, 511, 512, 428,
+ 173, 431, 433, 420, -645, -645, -645, -645, 418, 491,
+ 505, 505, 505, 448, 488, 67, -645, -645, 229, -645,
+ -645, -645, -645, -645, -645, 450, -645, 505, 43, -645,
+ -645, 455, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, 501, 475, 233, 505, -645, -645, -645, -645, -645,
+ -645, -645, -645, 636, -645, 471, 478, 39, 489, 39,
+ -645, -645, -645, -645, -645, 492, -645, -645, -645, 507,
+ 76, 508, 510, 57, 521, 167, -645, -645, -645, 494,
+ -645, 229, -645, 514, 636, 566, -645, -645, -645, -645,
+ -645, -645, -645, -645, 67, 491, 39, -645, 39, -645,
+ -645, -645, -645, 517, 67, 522, -645, -645, 509, 513,
+ 233, 67, 506, -645, -645, -645, -645, -645, -645, -645,
+ -645, 533, -645, 515, 520, -645, -645, 538, -645
};
/* TAO_YYPGOTO[NTERM-NUM]. */
static const tao_yytype_int16 tao_yypgoto[] =
{
- -585, -585, 210, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, 198,
- -585, -585, 171, -585, -585, -585, 603, -585, -585, -585,
- -585, -585, -585, -585, 605, -585, 204, -585, -585, -211,
- -585, -585, 233, -585, -585, -236, -316, -585, -585, -585,
- -585, -585, -585, -585, -585, -277, -585, -585, -19, -585,
- -585, -13, -585, 11, -585, -585, -585, -585, -585, -585,
- -342, -585, 174, 179, 175, -228, -222, -206, -96, -585,
- -264, 12, -585, -585, -585, -35, 281, -290, -585, -585,
- -585, 67, -585, -585, -556, -7, -585, -585, -1, -585,
- -49, -585, -585, 557, 560, -48, -46, -45, -585, -585,
- -29, -585, -27, -585, -585, -585, -585, 239, 348, -585,
- -167, -585, -585, -585, -25, -585, -21, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -95, -585, -585, -585,
- -585, -585, -93, -585, -585, -585, -585, -585, -585, -585,
- -32, -585, -585, -585, -585, -585, -585, -585, -15, -585,
- -585, -585, -585, -585, -585, -67, -585, -585, -585, -65,
- -585, -585, -585, -585, -585, -585, -585, 70, -585, -585,
- -147, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, 14, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -584, -585, -585,
- -585, -585, -585, -111, -585, -585, -585, -585, -585, -585,
- -585, -585, -125, -585, -585, -408, -585, -529, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, 16, 17, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, 450, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -353, -240, -351, -546, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, 594, -585,
- -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
- -585, 634, -585, -585, -585, -585, 148, -585, -585, -585,
- -193, -585, -585, 69, -585, -585, -585, -585, -585, -585,
- 390, -585, -585, -5, -585, -585, -585, -585, -585, 187,
- -585, -585, -585, -585, -585, 344, -585, -585, -585, -585,
- -585, 414
+ -645, -645, 204, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, 205,
+ -645, -645, 163, -645, -645, -645, 604, -645, -645, -645,
+ -645, -645, -645, -645, 608, -645, 247, -645, -645, -207,
+ -645, -645, 237, -645, -645, -258, -317, -645, -645, -645,
+ -645, -645, -645, -645, -645, -278, -645, -645, -19, -645,
+ -645, -13, -645, 11, -645, -645, -645, -645, -645, -645,
+ -346, -645, 177, 170, 166, -165, -158, -187, -68, -645,
+ -270, 12, -645, -645, -645, -35, 278, -291, -645, -645,
+ -645, 64, -645, -645, -563, 0, -645, -645, -1, -645,
+ -50, -645, -645, 565, 567, -49, -48, -47, -645, -645,
+ -29, -645, -27, -645, -645, -645, -645, 225, 354, -645,
+ -138, -645, -645, -645, -25, -645, -21, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -95, -645, -645, -645,
+ -645, -645, -96, -645, -645, -645, -645, -645, -645, -645,
+ -32, -645, -645, -645, -645, -645, -645, -645, -14, -645,
+ -645, -645, -645, -645, -645, -67, -645, -645, -645, -65,
+ -645, -645, -645, -645, -645, -645, -645, 68, -645, -645,
+ -139, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, 14, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -551, -645, -645,
+ -645, -645, -645, -111, -645, -645, -645, -645, -645, -645,
+ -645, -645, -125, -645, -645, -417, -645, -644, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, 16, 17, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, 457, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -360, -232, -354, -542, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, 601, -645,
+ -645, -645, -645, -645, -645, -645, -645, -645, -645, -645,
+ -645, 641, -645, -645, -645, -645, 146, -645, -645, -645,
+ -194, -645, -645, 69, -645, -645, -645, -645, -645, -645,
+ 394, -645, -645, -7, -645, -645, -645, -645, -645, -645,
+ 287, 189, -645, -645, -645, -645, -645, 355, -645, -645,
+ -645, -645, -645, -645, 421
};
/* TAO_YYTABLE[TAO_YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
@@ -1445,234 +1447,226 @@ static const tao_yytype_int16 tao_yytable[] =
{
84, 130, 99, 101, 149, 95, 96, 145, 186, 146,
187, 147, 85, 40, 41, 148, 50, 129, 51, 52,
- 353, 392, 323, 292, 448, 530, 180, 183, 257, 184,
- 185, 639, 483, 306, 484, 442, 379, 380, 613, 616,
- 83, 221, 661, 191, 222, 205, 149, 647, 83, 145,
- 206, 146, 719, 147, 17, 83, 178, 148, 91, 129,
- 83, 7, 227, 206, 189, 3, 192, 193, 194, 195,
- 491, 677, 719, 389, 197, 228, 83, 103, 200, 720,
- 721, 201, 83, 7, 203, 159, 348, 467, 114, 115,
- 83, 580, 118, 119, 120, 121, 454, 455, 207, 720,
- 721, 410, 11, 206, 17, -275, 312, 644, 87, 106,
- -115, -116, 254, 106, 106, 175, 206, 206, 98, 354,
- 355, 356, 357, 358, 359, 360, 98, 647, 412, 361,
- 362, 354, 355, 356, 357, 358, 359, 360, 98, 614,
- 614, 361, 362, 392, 4, 177, 366, 5, 6, 7,
- 8, 496, 363, 364, 206, 708, 709, 365, 366, -257,
- 98, 280, -114, 9, 10, 106, 11, 188, 98, -396,
- 12, 718, 281, 208, -76, 282, -468, 106, 257, 283,
- 107, 442, 107, 13, 14, 15, 16, 211, 741, 223,
- 224, 275, 17, 18, 452, 453, 19, 290, 213, 20,
- 108, 720, 721, 513, 284, 216, 21, 22, 285, 392,
- 212, 779, 86, 88, 23, 24, 456, 457, 458, 90,
- 93, 787, 286, 287, 542, 543, 251, 252, 792, 520,
- 219, -38, 544, 545, 313, 168, 290, 290, 480, 168,
- 645, 635, 646, 313, 393, 218, 394, 735, 736, 737,
- 546, 547, 548, 327, 220, 329, 253, 196, 206, 198,
- 345, 254, 231, 342, 229, 255, 256, 445, 446, 447,
- 534, 535, 251, 252, 232, 83, 230, 233, 345, 235,
- 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
- 123, 124, 391, 475, 476, 236, 125, 126, 127, 237,
- 238, 396, 253, 477, 239, 240, 243, 254, 241, 247,
- 401, 478, 479, 248, 249, 250, -469, 295, 749, 411,
- 645, 637, 646, 271, 272, 297, 296, 307, 303, 315,
- 308, 346, 324, 129, 328, 469, 470, 658, 471, 472,
- 335, 336, 390, 397, 340, 398, 399, 400, 403, 773,
- -304, 149, 474, 98, 145, 417, 146, 419, 147, 422,
- 449, 451, 148, 450, 129, 468, 393, 501, 394, 83,
- 506, 503, 507, 514, 113, 114, 115, 116, 117, 118,
- 119, 120, 121, 122, 123, 124, 9, 10, 515, 11,
- 125, 126, 127, 517, 512, 518, 522, 538, 536, 537,
- 549, 760, 550, 290, 551, 149, 149, 323, 145, 145,
- 146, 146, 147, 147, 391, 83, 148, 148, 129, 129,
- 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
- 123, 124, 393, 552, 394, -232, 392, 126, 127, 221,
- 565, 574, 606, 579, -327, 591, 528, 98, 596, 597,
- 598, 670, -77, 752, 671, 106, 557, 558, 559, 560,
- 562, 599, 600, 601, 602, 604, 605, 392, 607, 609,
- 615, 617, 618, 619, 620, 621, 572, 573, 622, 623,
- 391, 624, 627, 628, 641, 643, 629, 84, 630, 636,
- 640, 642, 781, 98, 782, 654, 663, 665, 679, 582,
- 659, 678, 692, 693, -345, 694, 696, 680, 697, 698,
- 703, 689, 702, 40, 41, 83, 50, 706, 51, 52,
+ 357, 396, 293, 539, 455, 180, 183, 184, 185, 490,
+ 326, 383, 384, 646, 401, 491, 257, 307, 449, 403,
+ 401, 403, 83, 191, 726, 3, 149, 715, 716, 145,
+ 83, 146, 393, 147, 223, 224, 178, 148, 726, 129,
+ 654, 83, 227, 725, 189, 83, 192, 193, 194, 195,
+ 83, 727, 728, 500, 197, 228, 7, 313, 200, 83,
+ 748, 201, 668, 417, 203, 727, 728, 83, 459, 460,
+ 206, 589, 113, 114, 115, 116, 117, 118, 119, 120,
+ 121, 122, 123, 124, 9, 10, 103, 11, 125, 126,
+ 127, 684, 206, 352, -275, 7, 159, 206, 206, 206,
+ 98, 358, 359, 360, 361, 362, 363, 364, 98, 251,
+ 252, 365, 366, 505, -115, 352, 419, 106, 654, 98,
+ 352, 622, 622, 206, 106, -257, 461, 462, 370, 396,
+ 358, 359, 360, 361, 362, 363, 364, 98, 17, 253,
+ 365, 366, 87, 17, 254, 98, 175, 91, 255, 256,
+ -77, 367, 368, 106, 83, 177, 369, 370, 205, 474,
+ 114, 115, 188, 206, 118, 119, 120, 121, 208, 449,
+ 257, 276, 108, 83, 11, 727, 728, 291, 113, 114,
+ 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+ -396, 786, 281, 207, 522, 126, 127, 396, 206, 86,
+ 88, 794, -114, 282, 537, 106, 283, 168, 799, -116,
+ 284, 168, 106, 651, 314, 529, 318, 321, 254, -468,
+ 107, -76, 652, 314, 106, 397, 642, 398, 653, 196,
+ 487, 198, 98, 107, 331, 285, 333, 221, 211, 286,
+ 222, 349, 90, 93, 346, 463, 464, 465, 742, 743,
+ 744, 98, 212, 287, 288, 83, 555, 556, 557, 349,
113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
- 123, 124, 9, 10, 710, 11, 125, 126, 127, 711,
- -354, 732, 329, 750, 610, 611, 612, 423, 727, -336,
- 5, 734, 751, 8, -336, -336, -336, -336, -336, -336,
- -336, -336, -336, -336, -336, -336, 9, 10, 755, 11,
- 759, -336, -336, 12, 329, 652, 251, 252, 424, 425,
- -336, 753, 761, 762, 772, 770, 13, 774, 788, 789,
- 436, 437, 438, 98, 83, 345, 786, 795, 790, 113,
- 114, 115, 116, 117, 118, 119, 120, 121, 122, 21,
- 22, 793, 799, 798, 801, 502, 126, 127, 84, 92,
- 89, 497, 608, 539, 662, 669, 541, -336, 669, 540,
- 582, 83, 181, 444, -62, 182, 113, 114, 115, 116,
- 117, 118, 119, 120, 121, 122, 123, 124, 510, 691,
- 382, 763, 690, 126, 127, 766, 638, 780, 791, 393,
- 278, 394, 170, 109, 595, 653, 563, 343, 695, 402,
- 319, 0, 98, 0, 0, 84, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 713, 0, 0,
- 393, 0, 394, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 391, 0, 98,
- 0, 345, 764, 754, 0, 149, 0, 0, 145, 0,
- 146, 0, 147, 0, 0, 0, 148, 0, 129, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 391, 0,
+ 123, 124, 213, 395, 551, 552, 125, 126, 127, 452,
+ 453, 454, 400, 553, 554, 216, 543, 544, 218, 219,
+ 206, 220, 229, 407, 230, 233, 756, 231, 232, 273,
+ 652, 235, 236, 418, 644, 237, 653, 238, 296, 239,
+ 241, 240, 243, 298, 247, 304, 249, 129, 476, 477,
+ 478, 479, 248, 250, 665, -469, 316, 780, 272, 308,
+ 309, 350, 328, 98, 332, 149, 481, 297, 145, 344,
+ 146, 339, 147, 340, 394, 402, 148, 404, 129, 475,
+ 471, 405, 83, 397, -304, 398, 406, 113, 114, 115,
+ 116, 117, 118, 119, 120, 121, 122, 123, 124, 9,
+ 10, 408, 11, 125, 126, 127, 410, 424, 426, 429,
+ 456, 521, 510, 512, 767, 457, 515, 458, 516, 523,
+ 291, 524, 149, 149, 531, 145, 145, 146, 146, 147,
+ 147, 395, 326, 148, 148, 129, 129, 526, 527, 545,
+ 546, 547, 221, 558, 559, 560, 605, 561, -232, 574,
+ 583, 397, 396, 398, 588, -327, 600, 606, 615, 607,
+ 98, 608, 609, 610, 611, 618, 613, 677, 614, 759,
+ 678, 616, 623, 566, 567, 568, 569, 571, 624, 625,
+ 83, 626, 627, 396, 628, 113, 114, 115, 116, 117,
+ 118, 119, 120, 121, 122, 581, 582, 629, 630, 395,
+ 631, 636, 126, 127, 634, 635, 84, 648, 788, 637,
+ 789, 643, 647, 649, 650, 661, 670, 666, 591, 672,
+ 686, 685, -345, 687, 699, 700, 701, 703, 696, 704,
+ 709, 705, 40, 41, 83, 50, 710, 51, 52, 113,
+ 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
+ 124, 9, 10, 713, 11, 125, 126, 127, 98, 717,
+ 718, 333, -354, 619, 620, 621, 430, 734, -336, 5,
+ 739, 757, 8, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, 9, 10, 741, 11, 758,
+ -336, -336, 12, 333, 659, 251, 252, 431, 432, -336,
+ 760, 251, 252, 766, 762, 13, 777, 768, 769, 443,
+ 444, 445, 98, 349, 779, 781, 793, 800, 795, 802,
+ 806, 796, 482, 483, 808, 797, 511, 805, 21, 22,
+ 92, 253, 484, 89, 550, 84, 254, 549, 617, 506,
+ 485, 486, 676, 548, 451, 676, -336, 591, 669, 83,
+ 181, 519, 182, -62, 113, 114, 115, 116, 117, 118,
+ 119, 120, 121, 122, 123, 124, 698, 386, 770, 773,
+ 697, 126, 127, 645, 787, 798, 397, 279, 398, 170,
+ 109, 604, 347, 702, 660, 572, 497, 322, 0, 0,
+ 0, 0, 84, 0, 409, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 720, 0, 0, 397, 0, 398,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 345, 0, 345, 0, 329, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 329, 0, 423, 0, -336, 5,
- 0, 329, 8, -336, -336, -336, -336, -336, -336, -336,
- -336, -336, -336, -336, -336, 9, 10, 0, 11, 0,
- -336, -336, 12, 0, 0, 251, 252, 424, 425, -336,
- 0, 0, 0, 0, 0, 13, 0, 0, 0, 436,
- 437, 438, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 21, 22,
+ 0, 0, 0, 0, 395, 0, 0, 98, 349, 771,
+ 761, 0, 149, 0, 0, 145, 0, 146, 0, 147,
+ 0, 0, 0, 148, 0, 129, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 395, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 349, 0, 349,
+ 0, 333, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 333, 0, 430, 0, -336, 5, 0, 333, 8,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, 9, 10, 0, 11, 0, -336, -336, 12,
+ 0, 0, 251, 252, 431, 432, -336, 0, 0, 0,
+ 0, 0, 13, 0, 0, 0, 443, 444, 445, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 21, 22, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, -336, 0, 423, 0,
- -336, 5, 0, -481, 8, -336, -336, -336, -336, -336,
- -336, -336, -336, -336, -336, -336, -336, 9, 10, 0,
- 11, 0, -336, -336, 12, 0, 0, 251, 252, 424,
- 425, -336, 0, 0, 0, 0, 0, 13, 0, 0,
- 0, 489, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 490, 0, 0, 0, 0, 0, 0, 0, 0,
- 21, 22, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, -336, 0,
- 423, 0, -336, 5, 0, -448, 8, -336, -336, -336,
- -336, -336, -336, -336, -336, -336, -336, -336, -336, 9,
- 10, 0, 11, 0, -336, -336, 12, 0, 0, 251,
- 252, 424, 425, -336, 0, 423, 0, -336, 5, 13,
- 0, 8, -336, -336, -336, -336, -336, -336, -336, -336,
+ 0, 0, 0, -336, 0, 430, 0, -336, 5, 0,
+ -481, 8, -336, -336, -336, -336, -336, -336, -336, -336,
-336, -336, -336, -336, 9, 10, 0, 11, 0, -336,
- -336, 12, 21, 22, 251, 252, 424, 425, -336, 0,
- 0, 0, 0, 0, 13, 0, 0, 0, 0, 0,
- -336, 0, 0, 0, 0, 0, 0, -44, 0, 0,
+ -336, 12, 0, 0, 251, 252, 431, 432, -336, 0,
+ 0, 0, 0, 0, 13, 0, 0, 0, 498, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 499, 0,
0, 0, 0, 0, 0, 0, 0, 21, 22, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, -336, 0, 423, 0, -336,
- 5, 0, -495, 8, -336, -336, -336, -336, -336, -336,
+ 0, 0, 0, 0, 0, -336, 0, 430, 0, -336,
+ 5, 0, -448, 8, -336, -336, -336, -336, -336, -336,
-336, -336, -336, -336, -336, -336, 9, 10, 0, 11,
- 0, -336, -336, 12, 0, 0, 251, 252, 424, 425,
- -336, 0, 423, 0, -336, 5, 13, 0, 8, -336,
+ 0, -336, -336, 12, 0, 0, 251, 252, 431, 432,
+ -336, 0, 430, 0, -336, 5, 13, 0, 8, -336,
-336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
-336, 9, 10, 0, 11, 0, -336, -336, 12, 21,
- 22, 251, 252, 424, 425, -336, 0, 0, 0, 0,
+ 22, 251, 252, 431, 432, -336, 0, 0, 0, 0,
0, 13, 0, 0, 0, 0, 0, -336, 0, 0,
- 0, 0, 0, 0, -66, 0, 0, 0, 0, 0,
- 0, 464, 0, 83, 21, 22, 0, 0, 113, 114,
- 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
- 9, 10, -336, 11, 125, 126, 127, -2, 4, -472,
- 0, 5, 6, 7, 8, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 9, 10, 0,
- 11, 0, 0, 0, 12, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 13, 14, 15,
- 16, 0, 0, 0, 0, 0, 17, 18, 0, 0,
- 19, 98, 0, 20, 0, 0, 0, 0, 0, 0,
- 21, 22, 0, 0, 0, 0, 0, 0, 23, 24
+ 0, 0, 0, 0, -44, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 21, 22, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -336, 0, 430, 0, -336, 5, 0, -495,
+ 8, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, 9, 10, 0, 11, 0, -336, -336,
+ 12, 0, 0, 251, 252, 431, 432, -336, 0, 430,
+ 0, -336, 5, 13, 0, 8, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, 9, 10,
+ 0, 11, 0, -336, -336, 12, 21, 22, 251, 252,
+ 431, 432, -336, 0, 0, 0, 0, 0, 13, 0,
+ 0, 0, 0, 0, -336, 0, 0, 0, 0, 4,
+ 0, -66, 5, 6, 7, 8, 0, 0, 0, 0,
+ 0, 21, 22, 0, 0, 0, 0, 0, 9, 10,
+ 0, 11, 0, 0, 0, 12, 0, 0, 0, -336,
+ 0, 0, 0, 0, 0, 0, -472, 0, 13, 14,
+ 15, 16, 0, 0, 0, 0, 0, 17, 18, 0,
+ 0, 19, -2, 4, 20, 0, 5, 6, 7, 8,
+ 0, 21, 22, 0, 0, 0, 0, 0, 0, 23,
+ 24, 0, 9, 10, 0, 11, 0, 0, 0, 12,
+ 0, 0, 0, 0, 0, 0, -38, 0, 0, 0,
+ 0, 0, 13, 14, 15, 16, 0, 0, 0, 0,
+ 0, 17, 18, 0, 0, 19, 0, 0, 20, 0,
+ 0, 0, 0, 0, 0, 21, 22, 0, 0, 0,
+ 0, 0, 0, 23, 24
};
static const tao_yytype_int16 tao_yycheck[] =
{
13, 36, 21, 22, 36, 18, 19, 36, 75, 36,
75, 36, 13, 2, 2, 36, 2, 36, 2, 2,
- 297, 311, 262, 216, 366, 433, 75, 75, 175, 75,
- 75, 587, 385, 244, 385, 351, 300, 301, 3, 3,
- 3, 8, 626, 78, 11, 76, 78, 593, 3, 78,
- 81, 78, 1, 78, 49, 3, 75, 78, 53, 78,
- 3, 6, 90, 81, 77, 0, 79, 80, 81, 82,
- 386, 655, 1, 309, 87, 103, 3, 3, 91, 28,
- 29, 94, 3, 6, 97, 22, 104, 8, 9, 10,
- 3, 499, 13, 14, 15, 16, 95, 96, 76, 28,
- 29, 337, 23, 81, 49, 86, 19, 60, 53, 89,
- 86, 86, 65, 89, 89, 87, 81, 81, 81, 74,
- 75, 76, 77, 78, 79, 80, 81, 673, 339, 84,
- 85, 74, 75, 76, 77, 78, 79, 80, 81, 104,
- 104, 84, 85, 433, 1, 86, 101, 4, 5, 6,
- 7, 387, 95, 96, 81, 684, 685, 100, 101, 88,
- 81, 6, 86, 20, 21, 89, 23, 3, 81, 86,
- 27, 700, 17, 3, 86, 20, 86, 89, 325, 24,
- 104, 497, 104, 40, 41, 42, 43, 86, 717, 8,
- 9, 204, 49, 50, 82, 83, 53, 216, 48, 56,
- 29, 28, 29, 414, 49, 89, 63, 64, 53, 499,
- 86, 767, 14, 15, 71, 72, 97, 98, 99, 15,
- 16, 777, 67, 68, 452, 453, 30, 31, 784, 422,
- 86, 88, 454, 455, 253, 64, 255, 256, 385, 68,
- 593, 583, 593, 262, 311, 87, 311, 35, 36, 37,
- 456, 457, 458, 266, 87, 268, 60, 86, 81, 88,
- 279, 65, 86, 276, 104, 69, 70, 363, 364, 365,
- 437, 438, 30, 31, 86, 3, 104, 87, 297, 86,
- 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
- 18, 19, 311, 51, 52, 86, 24, 25, 26, 86,
- 86, 314, 60, 61, 87, 86, 86, 65, 87, 86,
- 323, 69, 70, 87, 86, 86, 86, 8, 726, 338,
- 673, 585, 673, 87, 89, 47, 104, 87, 101, 58,
- 87, 3, 88, 352, 87, 384, 384, 614, 384, 384,
- 87, 87, 31, 3, 89, 86, 86, 86, 86, 757,
- 105, 383, 384, 81, 383, 90, 383, 3, 383, 90,
- 92, 94, 383, 93, 383, 384, 433, 91, 433, 3,
- 90, 105, 3, 87, 8, 9, 10, 11, 12, 13,
- 14, 15, 16, 17, 18, 19, 20, 21, 90, 23,
- 24, 25, 26, 103, 413, 103, 88, 102, 88, 86,
- 103, 743, 103, 422, 103, 437, 438, 647, 437, 438,
- 437, 438, 437, 438, 433, 3, 437, 438, 437, 438,
+ 298, 312, 216, 440, 370, 75, 75, 75, 75, 389,
+ 262, 301, 302, 596, 3, 389, 175, 244, 355, 3,
+ 3, 3, 3, 78, 1, 0, 78, 691, 692, 78,
+ 3, 78, 310, 78, 8, 9, 75, 78, 1, 78,
+ 602, 3, 90, 707, 77, 3, 79, 80, 81, 82,
+ 3, 28, 29, 390, 87, 103, 6, 19, 91, 3,
+ 724, 94, 633, 341, 97, 28, 29, 3, 82, 83,
+ 81, 508, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 3, 23, 24, 25,
+ 26, 662, 81, 104, 86, 6, 22, 81, 81, 81,
+ 81, 74, 75, 76, 77, 78, 79, 80, 81, 30,
+ 31, 84, 85, 391, 86, 104, 343, 89, 680, 81,
+ 104, 104, 104, 81, 89, 88, 95, 96, 101, 440,
+ 74, 75, 76, 77, 78, 79, 80, 81, 49, 60,
+ 84, 85, 53, 49, 65, 81, 87, 53, 69, 70,
+ 86, 95, 96, 89, 3, 86, 100, 101, 76, 8,
+ 9, 10, 3, 81, 13, 14, 15, 16, 3, 506,
+ 329, 204, 29, 3, 23, 28, 29, 216, 8, 9,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 86, 774, 6, 76, 421, 25, 26, 508, 81, 14,
+ 15, 784, 86, 17, 34, 89, 20, 64, 791, 86,
+ 24, 68, 89, 60, 253, 429, 255, 256, 65, 86,
+ 104, 86, 602, 262, 89, 312, 592, 312, 602, 86,
+ 389, 88, 81, 104, 267, 49, 269, 8, 86, 53,
+ 11, 280, 15, 16, 277, 97, 98, 99, 35, 36,
+ 37, 81, 86, 67, 68, 3, 463, 464, 465, 298,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
- 18, 19, 499, 88, 499, 88, 726, 25, 26, 8,
- 88, 88, 3, 88, 88, 88, 34, 81, 90, 86,
- 86, 644, 86, 730, 647, 89, 475, 476, 477, 478,
- 479, 86, 86, 86, 86, 86, 86, 757, 86, 102,
- 3, 3, 86, 86, 86, 86, 489, 490, 86, 86,
- 499, 86, 86, 86, 90, 66, 88, 500, 88, 88,
- 88, 88, 769, 81, 771, 3, 55, 90, 87, 500,
- 101, 86, 3, 3, 35, 88, 86, 103, 86, 101,
- 35, 106, 102, 502, 502, 3, 502, 38, 502, 502,
+ 18, 19, 48, 312, 459, 460, 24, 25, 26, 367,
+ 368, 369, 315, 461, 462, 89, 444, 445, 87, 86,
+ 81, 87, 104, 326, 104, 87, 733, 86, 86, 89,
+ 680, 86, 86, 342, 594, 86, 680, 86, 8, 87,
+ 87, 86, 86, 47, 86, 101, 86, 356, 388, 388,
+ 388, 388, 87, 86, 622, 86, 58, 764, 87, 87,
+ 87, 3, 88, 81, 87, 387, 388, 104, 387, 89,
+ 387, 87, 387, 87, 31, 3, 387, 86, 387, 388,
+ 1, 86, 3, 440, 105, 440, 86, 8, 9, 10,
+ 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
+ 21, 86, 23, 24, 25, 26, 86, 90, 3, 90,
+ 92, 420, 91, 105, 750, 93, 90, 94, 3, 87,
+ 429, 90, 444, 445, 88, 444, 445, 444, 445, 444,
+ 445, 440, 654, 444, 445, 444, 445, 103, 103, 88,
+ 86, 102, 8, 103, 103, 103, 90, 88, 88, 88,
+ 88, 508, 733, 508, 88, 88, 88, 86, 3, 86,
+ 81, 86, 86, 86, 86, 102, 86, 651, 86, 737,
+ 654, 86, 3, 482, 483, 484, 485, 486, 3, 86,
+ 3, 86, 86, 764, 86, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 498, 499, 86, 86, 508,
+ 86, 88, 25, 26, 86, 86, 509, 90, 776, 88,
+ 778, 88, 88, 88, 66, 3, 55, 101, 509, 90,
+ 87, 86, 35, 103, 3, 3, 88, 86, 106, 86,
+ 102, 101, 511, 511, 3, 511, 35, 511, 511, 8,
+ 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
+ 19, 20, 21, 38, 23, 24, 25, 26, 81, 101,
+ 62, 564, 102, 566, 567, 568, 1, 102, 3, 4,
+ 59, 90, 7, 8, 9, 10, 11, 12, 13, 14,
+ 15, 16, 17, 18, 19, 20, 21, 102, 23, 101,
+ 25, 26, 27, 596, 603, 30, 31, 32, 33, 34,
+ 101, 30, 31, 86, 102, 40, 102, 89, 88, 44,
+ 45, 46, 81, 622, 90, 39, 89, 101, 86, 76,
+ 90, 102, 51, 52, 76, 102, 412, 102, 63, 64,
+ 16, 60, 61, 15, 458, 638, 65, 457, 564, 392,
+ 69, 70, 651, 456, 356, 654, 81, 638, 638, 3,
+ 75, 416, 75, 88, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 675, 303, 753, 755,
+ 674, 25, 26, 595, 775, 790, 733, 210, 733, 68,
+ 29, 525, 278, 680, 605, 486, 389, 256, -1, -1,
+ -1, -1, 695, -1, 329, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 695, -1, -1, 764, -1, 764,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 733, -1, -1, 81, 737, 754,
+ 739, -1, 754, -1, -1, 754, -1, 754, -1, 754,
+ -1, -1, -1, 754, -1, 754, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 764, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 776, -1, 778,
+ -1, 774, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 784, -1, 1, -1, 3, 4, -1, 791, 7,
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
- 18, 19, 20, 21, 101, 23, 24, 25, 26, 62,
- 102, 59, 555, 90, 557, 558, 559, 1, 102, 3,
- 4, 102, 101, 7, 8, 9, 10, 11, 12, 13,
- 14, 15, 16, 17, 18, 19, 20, 21, 102, 23,
- 86, 25, 26, 27, 587, 594, 30, 31, 32, 33,
- 34, 101, 89, 88, 90, 102, 40, 39, 86, 102,
- 44, 45, 46, 81, 3, 614, 89, 76, 102, 8,
- 9, 10, 11, 12, 13, 14, 15, 16, 17, 63,
- 64, 101, 90, 102, 76, 405, 25, 26, 631, 16,
- 15, 388, 555, 449, 631, 644, 451, 81, 647, 450,
- 631, 3, 75, 352, 88, 75, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 17, 18, 19, 409, 668,
- 302, 746, 667, 25, 26, 748, 586, 768, 783, 726,
- 210, 726, 68, 29, 516, 596, 479, 277, 673, 325,
- 256, -1, 81, -1, -1, 688, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 688, -1, -1,
- 757, -1, 757, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 726, -1, 81,
- -1, 730, 747, 732, -1, 747, -1, -1, 747, -1,
- 747, -1, 747, -1, -1, -1, 747, -1, 747, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 757, -1,
+ 18, 19, 20, 21, -1, 23, -1, 25, 26, 27,
+ -1, -1, 30, 31, 32, 33, 34, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, 44, 45, 46, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 769, -1, 771, -1, 767, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 777, -1, 1, -1, 3, 4,
- -1, 784, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, 21, -1, 23, -1,
- 25, 26, 27, -1, -1, 30, 31, 32, 33, 34,
- -1, -1, -1, -1, -1, 40, -1, -1, -1, 44,
- 45, 46, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 63, 64,
+ -1, -1, -1, -1, -1, 63, 64, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 81, -1, 1, -1,
- 3, 4, -1, 88, 7, 8, 9, 10, 11, 12,
- 13, 14, 15, 16, 17, 18, 19, 20, 21, -1,
- 23, -1, 25, 26, 27, -1, -1, 30, 31, 32,
- 33, 34, -1, -1, -1, -1, -1, 40, -1, -1,
- -1, 44, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 54, -1, -1, -1, -1, -1, -1, -1, -1,
- 63, 64, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
- 1, -1, 3, 4, -1, 88, 7, 8, 9, 10,
- 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
- 21, -1, 23, -1, 25, 26, 27, -1, -1, 30,
- 31, 32, 33, 34, -1, 1, -1, 3, 4, 40,
- -1, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ -1, -1, -1, 81, -1, 1, -1, 3, 4, -1,
+ 88, 7, 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, -1, 23, -1, 25,
- 26, 27, 63, 64, 30, 31, 32, 33, 34, -1,
- -1, -1, -1, -1, 40, -1, -1, -1, -1, -1,
- 81, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ 26, 27, -1, -1, 30, 31, 32, 33, 34, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, 44, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 54, -1,
-1, -1, -1, -1, -1, -1, -1, 63, 64, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 81, -1, 1, -1, 3,
@@ -1685,16 +1679,30 @@ static const tao_yytype_int16 tao_yycheck[] =
64, 30, 31, 32, 33, 34, -1, -1, -1, -1,
-1, 40, -1, -1, -1, -1, -1, 81, -1, -1,
-1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
- -1, 1, -1, 3, 63, 64, -1, -1, 8, 9,
- 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
- 20, 21, 81, 23, 24, 25, 26, 0, 1, 88,
- -1, 4, 5, 6, 7, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 20, 21, -1,
- 23, -1, -1, -1, 27, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 40, 41, 42,
- 43, -1, -1, -1, -1, -1, 49, 50, -1, -1,
- 53, 81, -1, 56, -1, -1, -1, -1, -1, -1,
- 63, 64, -1, -1, -1, -1, -1, -1, 71, 72
+ -1, -1, -1, -1, 63, 64, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 81, -1, 1, -1, 3, 4, -1, 88,
+ 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+ 17, 18, 19, 20, 21, -1, 23, -1, 25, 26,
+ 27, -1, -1, 30, 31, 32, 33, 34, -1, 1,
+ -1, 3, 4, 40, -1, 7, 8, 9, 10, 11,
+ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
+ -1, 23, -1, 25, 26, 27, 63, 64, 30, 31,
+ 32, 33, 34, -1, -1, -1, -1, -1, 40, -1,
+ -1, -1, -1, -1, 81, -1, -1, -1, -1, 1,
+ -1, 88, 4, 5, 6, 7, -1, -1, -1, -1,
+ -1, 63, 64, -1, -1, -1, -1, -1, 20, 21,
+ -1, 23, -1, -1, -1, 27, -1, -1, -1, 81,
+ -1, -1, -1, -1, -1, -1, 88, -1, 40, 41,
+ 42, 43, -1, -1, -1, -1, -1, 49, 50, -1,
+ -1, 53, 0, 1, 56, -1, 4, 5, 6, 7,
+ -1, 63, 64, -1, -1, -1, -1, -1, -1, 71,
+ 72, -1, 20, 21, -1, 23, -1, -1, -1, 27,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, 40, 41, 42, 43, -1, -1, -1, -1,
+ -1, 49, 50, -1, -1, 53, -1, -1, 56, -1,
+ -1, -1, -1, -1, -1, 63, 64, -1, -1, -1,
+ -1, -1, -1, 71, 72
};
/* TAO_YYSTOS[STATE-NUM] -- The (internal number of the) accessing
@@ -1708,7 +1716,7 @@ static const tao_yytype_uint16 tao_yystos[] =
180, 198, 207, 227, 229, 241, 243, 265, 266, 267,
308, 359, 360, 361, 362, 363, 367, 389, 391, 414,
415, 416, 417, 418, 422, 423, 424, 427, 431, 433,
- 437, 451, 467, 468, 125, 181, 127, 137, 199, 228,
+ 437, 451, 469, 470, 125, 181, 127, 137, 199, 228,
242, 268, 309, 3, 178, 215, 136, 53, 136, 151,
153, 53, 143, 153, 154, 178, 178, 392, 81, 175,
178, 175, 452, 3, 118, 116, 89, 104, 139, 438,
@@ -1718,7 +1726,7 @@ static const tao_yytype_uint16 tao_yystos[] =
222, 223, 224, 225, 226, 227, 229, 241, 243, 267,
276, 279, 282, 285, 286, 289, 114, 111, 230, 22,
115, 112, 113, 120, 364, 121, 390, 122, 139, 425,
- 425, 117, 434, 123, 124, 87, 469, 86, 175, 185,
+ 425, 117, 434, 123, 124, 87, 471, 86, 175, 185,
217, 220, 221, 222, 223, 224, 282, 286, 3, 178,
200, 202, 178, 178, 178, 178, 139, 178, 139, 148,
178, 178, 368, 178, 176, 76, 81, 76, 3, 438,
@@ -1727,61 +1735,61 @@ static const tao_yytype_uint16 tao_yystos[] =
104, 86, 86, 87, 244, 86, 86, 86, 86, 87,
86, 87, 401, 86, 426, 419, 428, 86, 87, 86,
86, 30, 31, 60, 65, 69, 70, 297, 298, 303,
- 381, 383, 384, 470, 472, 477, 182, 128, 201, 269,
- 310, 87, 89, 370, 393, 178, 177, 453, 370, 140,
- 6, 17, 20, 24, 49, 53, 67, 68, 432, 443,
- 175, 445, 447, 134, 145, 8, 104, 47, 156, 277,
- 283, 287, 231, 101, 365, 402, 156, 87, 87, 435,
- 299, 304, 19, 175, 382, 58, 385, 447, 478, 478,
- 475, 473, 474, 382, 88, 471, 476, 178, 87, 178,
- 208, 211, 215, 216, 290, 87, 87, 149, 371, 369,
- 89, 398, 178, 457, 172, 175, 3, 441, 104, 446,
- 162, 159, 281, 172, 74, 75, 76, 77, 78, 79,
- 80, 84, 85, 95, 96, 100, 101, 175, 187, 188,
- 189, 190, 191, 192, 193, 194, 195, 196, 197, 197,
- 197, 233, 235, 236, 245, 372, 404, 420, 429, 162,
- 31, 175, 204, 282, 286, 342, 178, 3, 86, 86,
- 86, 178, 472, 86, 183, 129, 291, 209, 270, 311,
- 162, 175, 156, 399, 394, 454, 173, 90, 440, 3,
- 448, 450, 90, 1, 32, 33, 135, 163, 180, 198,
- 297, 308, 313, 318, 359, 360, 44, 45, 46, 146,
- 160, 161, 163, 320, 203, 195, 195, 195, 187, 92,
- 93, 94, 82, 83, 95, 96, 97, 98, 99, 278,
- 284, 288, 232, 234, 1, 202, 237, 8, 175, 217,
- 222, 223, 224, 250, 267, 51, 52, 61, 69, 70,
- 297, 366, 373, 381, 383, 386, 387, 388, 465, 44,
- 54, 163, 403, 405, 408, 411, 162, 159, 436, 300,
- 305, 91, 109, 105, 292, 294, 90, 3, 272, 275,
- 234, 150, 175, 156, 87, 90, 442, 103, 103, 449,
- 447, 171, 88, 167, 164, 169, 168, 170, 34, 319,
- 342, 165, 166, 321, 237, 237, 88, 86, 102, 189,
- 190, 191, 192, 192, 193, 193, 194, 194, 194, 103,
- 103, 103, 88, 235, 240, 238, 246, 175, 175, 175,
- 175, 466, 175, 466, 379, 88, 374, 375, 376, 377,
- 378, 380, 178, 178, 88, 406, 407, 421, 430, 88,
- 342, 212, 215, 184, 130, 295, 293, 210, 271, 273,
- 312, 88, 395, 455, 174, 443, 90, 86, 86, 86,
- 86, 86, 86, 314, 86, 86, 3, 86, 208, 102,
- 178, 178, 178, 3, 104, 3, 3, 3, 86, 86,
- 86, 86, 86, 86, 86, 409, 412, 86, 86, 88,
- 88, 301, 306, 213, 186, 187, 88, 197, 294, 211,
- 88, 90, 88, 66, 60, 381, 383, 384, 458, 460,
- 463, 464, 175, 450, 3, 322, 239, 247, 172, 101,
- 324, 324, 212, 55, 347, 90, 296, 274, 396, 175,
- 447, 447, 456, 459, 461, 462, 315, 324, 86, 87,
- 103, 325, 326, 410, 413, 302, 348, 307, 214, 106,
- 275, 175, 3, 3, 88, 460, 86, 86, 101, 333,
- 323, 248, 102, 35, 327, 330, 38, 344, 344, 344,
- 101, 62, 350, 215, 397, 334, 335, 316, 344, 1,
- 28, 29, 251, 253, 257, 259, 331, 102, 328, 345,
- 349, 351, 59, 400, 102, 35, 36, 37, 336, 339,
- 343, 344, 256, 261, 260, 249, 252, 254, 258, 342,
- 90, 101, 172, 101, 175, 102, 337, 340, 317, 86,
- 187, 89, 88, 253, 202, 263, 259, 332, 329, 346,
- 102, 352, 90, 342, 39, 353, 262, 264, 255, 211,
- 330, 172, 172, 338, 341, 354, 89, 211, 86, 102,
- 102, 339, 211, 101, 355, 76, 356, 357, 102, 90,
- 358, 76
+ 381, 383, 384, 467, 472, 474, 480, 182, 128, 201,
+ 269, 310, 87, 89, 370, 393, 178, 177, 453, 370,
+ 140, 6, 17, 20, 24, 49, 53, 67, 68, 432,
+ 443, 175, 445, 447, 134, 145, 8, 104, 47, 156,
+ 277, 283, 287, 231, 101, 365, 402, 156, 87, 87,
+ 435, 299, 304, 19, 175, 382, 58, 385, 175, 447,
+ 481, 175, 481, 477, 475, 476, 382, 478, 88, 473,
+ 479, 178, 87, 178, 208, 211, 215, 216, 290, 87,
+ 87, 149, 371, 369, 89, 398, 178, 457, 172, 175,
+ 3, 441, 104, 446, 162, 159, 281, 172, 74, 75,
+ 76, 77, 78, 79, 80, 84, 85, 95, 96, 100,
+ 101, 175, 187, 188, 189, 190, 191, 192, 193, 194,
+ 195, 196, 197, 197, 197, 233, 235, 236, 245, 372,
+ 404, 420, 429, 162, 31, 175, 204, 282, 286, 342,
+ 178, 3, 3, 3, 86, 86, 86, 178, 86, 474,
+ 86, 183, 129, 291, 209, 270, 311, 162, 175, 156,
+ 399, 394, 454, 173, 90, 440, 3, 448, 450, 90,
+ 1, 32, 33, 135, 163, 180, 198, 297, 308, 313,
+ 318, 359, 360, 44, 45, 46, 146, 160, 161, 163,
+ 320, 203, 195, 195, 195, 187, 92, 93, 94, 82,
+ 83, 95, 96, 97, 98, 99, 278, 284, 288, 232,
+ 234, 1, 202, 237, 8, 175, 217, 222, 223, 224,
+ 250, 267, 51, 52, 61, 69, 70, 297, 366, 373,
+ 381, 383, 386, 387, 388, 465, 466, 467, 44, 54,
+ 163, 403, 405, 408, 411, 162, 159, 436, 300, 305,
+ 91, 109, 105, 292, 294, 90, 3, 272, 275, 234,
+ 150, 175, 156, 87, 90, 442, 103, 103, 449, 447,
+ 171, 88, 167, 164, 169, 168, 170, 34, 319, 342,
+ 165, 166, 321, 237, 237, 88, 86, 102, 189, 190,
+ 191, 192, 192, 193, 193, 194, 194, 194, 103, 103,
+ 103, 88, 235, 240, 238, 246, 175, 175, 175, 175,
+ 468, 175, 468, 379, 88, 374, 375, 376, 377, 378,
+ 380, 178, 178, 88, 406, 407, 421, 430, 88, 342,
+ 212, 215, 184, 130, 295, 293, 210, 271, 273, 312,
+ 88, 395, 455, 174, 443, 90, 86, 86, 86, 86,
+ 86, 86, 314, 86, 86, 3, 86, 208, 102, 178,
+ 178, 178, 104, 3, 3, 86, 86, 86, 86, 86,
+ 86, 86, 409, 412, 86, 86, 88, 88, 301, 306,
+ 213, 186, 187, 88, 197, 294, 211, 88, 90, 88,
+ 66, 60, 381, 383, 384, 458, 460, 463, 464, 175,
+ 450, 3, 322, 239, 247, 172, 101, 324, 324, 212,
+ 55, 347, 90, 296, 274, 396, 175, 447, 447, 456,
+ 459, 461, 462, 315, 324, 86, 87, 103, 325, 326,
+ 410, 413, 302, 348, 307, 214, 106, 275, 175, 3,
+ 3, 88, 460, 86, 86, 101, 333, 323, 248, 102,
+ 35, 327, 330, 38, 344, 344, 344, 101, 62, 350,
+ 215, 397, 334, 335, 316, 344, 1, 28, 29, 251,
+ 253, 257, 259, 331, 102, 328, 345, 349, 351, 59,
+ 400, 102, 35, 36, 37, 336, 339, 343, 344, 256,
+ 261, 260, 249, 252, 254, 258, 342, 90, 101, 172,
+ 101, 175, 102, 337, 340, 317, 86, 187, 89, 88,
+ 253, 202, 263, 259, 332, 329, 346, 102, 352, 90,
+ 342, 39, 353, 262, 264, 255, 211, 330, 172, 172,
+ 338, 341, 354, 89, 211, 86, 102, 102, 339, 211,
+ 101, 355, 76, 356, 357, 102, 90, 358, 76
};
#define tao_yyerrok (tao_yyerrstatus = 0)
@@ -9227,7 +9235,7 @@ tao_yyreduce:
}
break;
- case 534:
+ case 536:
{
// extended_port_decl : IDL_PORT template_inst IDENTIFIER
@@ -9288,7 +9296,68 @@ tao_yyreduce:
}
break;
- case 535:
+ case 537:
+
+ {
+// | IDL_MIRRORPORT template_inst IDENTIFIER
+ idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen);
+ UTL_Scope *s = idl_global->scopes ().top_non_null ();
+ AST_Decl *d = s->lookup_by_name ((tao_yyvsp[(2) - (3)].tival)->name_, true);
+ AST_PortType *pt = 0;
+ AST_PortType::T_ARGLIST *args = 0;
+ bool so_far_so_good = true;
+
+ if (d == 0)
+ {
+ idl_global->err ()->lookup_error ((tao_yyvsp[(2) - (3)].tival)->name_);
+ so_far_so_good = false;
+ }
+ else
+ {
+ pt = AST_PortType::narrow_from_decl (d);
+
+ if (pt == 0)
+ {
+ idl_global->err ()->error1 (UTL_Error::EIDL_PORTTYPE_EXPECTED,
+ d);
+ so_far_so_good = false;
+ }
+ else
+ {
+ args =
+ pt->match_arg_names ((tao_yyvsp[(2) - (3)].tival)->args_);
+
+ if (args == 0)
+ {
+ so_far_so_good = false;
+ }
+ }
+ }
+
+ if (so_far_so_good)
+ {
+ Identifier id ((tao_yyvsp[(3) - (3)].strval));
+ ACE::strdelete ((tao_yyvsp[(3) - (3)].strval));
+ (tao_yyvsp[(3) - (3)].strval) = 0;
+
+ UTL_ScopedName sn (&id,
+ 0);
+
+ AST_Mirror_Port *mp =
+ idl_global->gen ()->create_mirror_port (&sn,
+ pt,
+ args);
+
+ (void) s->fe_add_mirror_port (mp);
+ }
+
+ (tao_yyvsp[(2) - (3)].tival)->destroy ();
+ delete (tao_yyvsp[(2) - (3)].tival);
+ (tao_yyvsp[(2) - (3)].tival) = 0;
+ }
+ break;
+
+ case 538:
{
// extended_port_decl : IDL_PORT scoped_name IDENTIFIER
@@ -9351,68 +9420,7 @@ tao_yyreduce:
}
break;
- case 536:
-
- {
-// | IDL_MIRRORPORT template_inst IDENTIFIER
- idl_global->set_parse_state (IDL_GlobalData::PS_MirrorPortDeclSeen);
- UTL_Scope *s = idl_global->scopes ().top_non_null ();
- AST_Decl *d = s->lookup_by_name ((tao_yyvsp[(2) - (3)].tival)->name_, true);
- AST_PortType *pt = 0;
- AST_PortType::T_ARGLIST *args = 0;
- bool so_far_so_good = true;
-
- if (d == 0)
- {
- idl_global->err ()->lookup_error ((tao_yyvsp[(2) - (3)].tival)->name_);
- so_far_so_good = false;
- }
- else
- {
- pt = AST_PortType::narrow_from_decl (d);
-
- if (pt == 0)
- {
- idl_global->err ()->error1 (UTL_Error::EIDL_PORTTYPE_EXPECTED,
- d);
- so_far_so_good = false;
- }
- else
- {
- args =
- pt->match_arg_names ((tao_yyvsp[(2) - (3)].tival)->args_);
-
- if (args == 0)
- {
- so_far_so_good = false;
- }
- }
- }
-
- if (so_far_so_good)
- {
- Identifier id ((tao_yyvsp[(3) - (3)].strval));
- ACE::strdelete ((tao_yyvsp[(3) - (3)].strval));
- (tao_yyvsp[(3) - (3)].strval) = 0;
-
- UTL_ScopedName sn (&id,
- 0);
-
- AST_Mirror_Port *mp =
- idl_global->gen ()->create_mirror_port (&sn,
- pt,
- args);
-
- (void) s->fe_add_mirror_port (mp);
- }
-
- (tao_yyvsp[(2) - (3)].tival)->destroy ();
- delete (tao_yyvsp[(2) - (3)].tival);
- (tao_yyvsp[(2) - (3)].tival) = 0;
- }
- break;
-
- case 537:
+ case 539:
{
// | IDL_MIRRORPORT scoped_name IDENTIFIER
@@ -9475,7 +9483,7 @@ tao_yyreduce:
}
break;
- case 538:
+ case 540:
{
// template_inst : scoped_name '<' at_least_one_scoped_name '>'
@@ -9486,7 +9494,7 @@ tao_yyreduce:
}
break;
- case 545:
+ case 547:
{
// connector_export : provides_decl
@@ -9494,7 +9502,7 @@ tao_yyreduce:
}
break;
- case 546:
+ case 548:
{
// ';'
@@ -9502,7 +9510,7 @@ tao_yyreduce:
}
break;
- case 547:
+ case 549:
{
// | uses_decl
@@ -9510,7 +9518,7 @@ tao_yyreduce:
}
break;
- case 548:
+ case 550:
{
// ';'
@@ -9518,7 +9526,7 @@ tao_yyreduce:
}
break;
- case 549:
+ case 551:
{
// | attribute
@@ -9526,7 +9534,7 @@ tao_yyreduce:
}
break;
- case 550:
+ case 552:
{
// ';'
@@ -9534,7 +9542,7 @@ tao_yyreduce:
}
break;
- case 551:
+ case 553:
{
// | template_extended_port_decl
@@ -9542,7 +9550,23 @@ tao_yyreduce:
}
break;
- case 552:
+ case 554:
+
+ {
+// ';'
+ idl_global->set_parse_state (IDL_GlobalData::PS_NoState);
+ }
+ break;
+
+ case 555:
+
+ {
+// | template_extended_port_decl
+ idl_global->set_parse_state (IDL_GlobalData::PS_ExtendedPortDeclSeen);
+ }
+ break;
+
+ case 556:
{
// ';'