diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2009-07-15 14:10:38 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2009-07-15 14:10:38 +0000 |
commit | 71c2b556546e6b5c83f53c9c958d168fb5d970ef (patch) | |
tree | ace01c351d6eb763023d3ca6772170752a47775d | |
parent | 30fc2900772946248205e1f31371708f1473519e (diff) | |
download | ATCD-71c2b556546e6b5c83f53c9c958d168fb5d970ef.tar.gz |
ChangeLogTag:Wed Jul 15 14:09:13 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r-- | modules/TAO/ChangeLog | 8 | ||||
-rw-r--r-- | modules/TAO/TAO_IDL/fe/idl.yy | 52 | ||||
-rw-r--r-- | modules/TAO/TAO_IDL/fe/y.tab.cpp | 1259 |
3 files changed, 659 insertions, 660 deletions
diff --git a/modules/TAO/ChangeLog b/modules/TAO/ChangeLog index 803fefe1c0e..2c1fd61a898 100644 --- a/modules/TAO/ChangeLog +++ b/modules/TAO/ChangeLog @@ -1,3 +1,11 @@ +Wed Jul 15 14:09:13 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu> + + * TAO_IDL/fe/idl.yy: + * TAO_IDL/fe/y.tab.cpp: + + Changed rules for extended provides and uses declarations to + parse overlooked template brackets. + Wed Jul 15 13:23:25 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 98f0917a8d9..835aac4688c 100644 --- a/modules/TAO/TAO_IDL/fe/idl.yy +++ b/modules/TAO/TAO_IDL/fe/idl.yy @@ -283,7 +283,7 @@ AST_Decl *tao_enum_constant_decl = 0; %type <dcval> param_type_spec %type <idlist> scoped_name interface_type component_inheritance_spec -%type <idlist> home_inheritance_spec primary_key_spec provides_type +%type <idlist> home_inheritance_spec primary_key_spec %type <slval> opt_context at_least_one_string_literal %type <slval> string_literals template_param_refs @@ -4806,28 +4806,28 @@ component_export } ; -provides_decl : provides_type id +provides_decl : IDL_PROVIDES interface_type id { -// provides_decl : provides_type id +// provides_decl : IDL_PROVIDES interface_type id UTL_Scope *s = idl_global->scopes ().top_non_null (); AST_Component *c = AST_Component::narrow_from_scope (s); if (c != 0) { - AST_Decl *d = s->lookup_by_name ($1, + AST_Decl *d = s->lookup_by_name ($2, true); if (0 == d) { - idl_global->err ()->lookup_error ($1); - - $1->destroy (); - delete $1; - $1 = 0; + idl_global->err ()->lookup_error ($2); $2->destroy (); delete $2; $2 = 0; + $3->destroy (); + delete $3; + $3 = 0; + break; } else if (d->node_type () != AST_Decl::NT_interface) @@ -4840,14 +4840,14 @@ provides_decl : provides_type id { idl_global->err ()->interface_expected (d); - $1->destroy (); - delete $1; - $1 = 0; - $2->destroy (); delete $2; $2 = 0; + $3->destroy (); + delete $3; + $3 = 0; + break; } } @@ -4858,27 +4858,17 @@ provides_decl : provides_type id AST_Component::port_description pd; // Strip off _cxx_, if any, for port name. - idl_global->original_local_name ($2); + idl_global->original_local_name ($3); - pd.id = $2; + pd.id = $3; pd.impl = interface_type; pd.line_number = idl_global->lineno (); c->provides ().enqueue_tail (pd); } - $1->destroy (); - delete $1; - $1 = 0; - } - ; - -provides_type - : IDL_PROVIDES interface_type - { -// provides_type : IDL_PROVIDES interface_type - // We use this extra rule here to use in both provides_decl and - // extended_provides_decl, so the LALR(1) parser can avoid conflicts. - $$ = $2; + $2->destroy (); + delete $2; + $2 = 0; } ; @@ -6237,7 +6227,7 @@ extended_provides_decl // extended_provides_decl : provides_decl idl_global->set_parse_state (IDL_GlobalData::PS_ProvidesDeclSeen); } - | provides_type at_least_one_template_param_ref IDENTIFIER + | IDL_PROVIDES template_ref IDENTIFIER { // | provides_type at_least_one_template_param_ref IDENTIFIER @@ -6255,9 +6245,9 @@ extended_uses_decl // extended_uses_decl : uses_decl idl_global->set_parse_state (IDL_GlobalData::PS_UsesDeclSeen); } - | uses_opt_multiple interface_type at_least_one_template_param_ref IDENTIFIER + | uses_opt_multiple template_ref IDENTIFIER { -// | uses_opt_multiple interface_type at_least_one_template_param_ref IDENTIFIER +// | uses_opt_multiple template_ref IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_ExtUsesDeclSeen); diff --git a/modules/TAO/TAO_IDL/fe/y.tab.cpp b/modules/TAO/TAO_IDL/fe/y.tab.cpp index 6f1dfa12f9c..6dba802f70b 100644 --- a/modules/TAO/TAO_IDL/fe/y.tab.cpp +++ b/modules/TAO/TAO_IDL/fe/y.tab.cpp @@ -595,16 +595,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 1213 +#define TAO_YYLAST 1293 /* TAO_YYNTOKENS -- Number of terminals. */ #define TAO_YYNTOKENS 107 /* TAO_YYNNTS -- Number of nonterminals. */ -#define TAO_YYNNTS 357 +#define TAO_YYNNTS 356 /* TAO_YYNRULES -- Number of rules. */ -#define TAO_YYNRULES 530 +#define TAO_YYNRULES 529 /* TAO_YYNRULES -- Number of states. */ -#define TAO_YYNSTATES 755 +#define TAO_YYNSTATES 753 /* TAO_YYTRANSLATE(TAO_YYLEX) -- Bison symbol number corresponding to TAO_YYLEX. */ #define TAO_YYUNDEFTOK 2 @@ -700,18 +700,17 @@ static const tao_yytype_uint16 tao_yyprhs[] = 969, 973, 977, 979, 981, 984, 985, 986, 987, 995, 996, 997, 1004, 1005, 1009, 1010, 1013, 1014, 1015, 1019, 1020, 1024, 1025, 1029, 1030, 1034, 1035, 1039, 1040, 1044, - 1047, 1050, 1052, 1054, 1058, 1061, 1063, 1064, 1068, 1072, - 1076, 1077, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1101, - 1102, 1106, 1107, 1110, 1111, 1112, 1113, 1119, 1122, 1123, - 1125, 1126, 1130, 1131, 1135, 1136, 1137, 1144, 1145, 1146, - 1153, 1155, 1157, 1159, 1161, 1163, 1166, 1170, 1171, 1172, - 1173, 1182, 1186, 1190, 1193, 1194, 1198, 1199, 1200, 1201, + 1048, 1050, 1052, 1056, 1059, 1061, 1062, 1066, 1070, 1074, + 1075, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1099, 1100, + 1104, 1105, 1108, 1109, 1110, 1111, 1117, 1120, 1121, 1123, + 1124, 1128, 1129, 1133, 1134, 1135, 1142, 1143, 1144, 1151, + 1153, 1155, 1157, 1159, 1161, 1164, 1168, 1169, 1170, 1171, + 1180, 1184, 1188, 1191, 1192, 1196, 1197, 1198, 1199, 1208, 1210, 1212, 1214, 1216, 1218, 1220, 1222, 1224, 1226, 1228, - 1230, 1231, 1232, 1233, 1241, 1245, 1246, 1247, 1254, 1255, - 1260, 1261, 1264, 1267, 1268, 1271, 1275, 1276, 1281, 1284, - 1288, 1289, 1291, 1292, 1293, 1294, 1295, 1296, 1308, 1310, - 1311, 1314, 1317, 1318, 1319, 1323, 1324, 1328, 1330, 1334, - 1336 + 1229, 1230, 1231, 1239, 1243, 1244, 1245, 1252, 1253, 1258, + 1259, 1262, 1265, 1266, 1269, 1273, 1274, 1279, 1282, 1286, + 1287, 1289, 1290, 1291, 1292, 1293, 1294, 1306, 1308, 1309, + 1312, 1315, 1316, 1317, 1321, 1322, 1326, 1328, 1332, 1334 }; /* TAO_YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -721,10 +720,10 @@ static const tao_yytype_int16 tao_yyrhs[] = 197, 111, 86, -1, -1, 358, 112, 86, -1, -1, 359, 113, 86, -1, -1, 179, 114, 86, -1, -1, 307, 115, 86, -1, -1, 130, 116, 86, -1, -1, - 432, 117, 86, -1, -1, 125, 118, 86, -1, -1, + 431, 117, 86, -1, -1, 125, 118, 86, -1, -1, 140, 119, 86, -1, -1, 360, 120, 86, -1, -1, - 388, 121, 86, -1, -1, 413, 122, 86, -1, -1, - 450, 123, 86, -1, -1, 1, 124, 86, -1, -1, + 387, 121, 86, -1, -1, 412, 122, 86, -1, -1, + 449, 123, 86, -1, -1, 1, 124, 86, -1, -1, -1, -1, -1, 5, 126, 3, 127, 87, 128, 109, 129, 88, -1, 131, -1, 178, -1, -1, -1, -1, 137, 132, 87, 133, 161, 134, 88, -1, -1, 6, @@ -819,39 +818,38 @@ static const tao_yytype_int16 tao_yyrhs[] = 364, 371, 365, 88, -1, -1, -1, 50, 177, 367, 369, 368, 155, -1, -1, 89, 370, 174, -1, -1, 371, 372, -1, -1, -1, 379, 373, 86, -1, -1, - 382, 374, 86, -1, -1, 385, 375, 86, -1, -1, - 386, 376, 86, -1, -1, 387, 377, 86, -1, -1, - 296, 378, 86, -1, 380, 177, -1, 60, 381, -1, - 174, -1, 19, -1, 383, 381, 177, -1, 65, 384, - -1, 58, -1, -1, 52, 174, 177, -1, 61, 174, - 177, -1, 51, 174, 177, -1, -1, 390, 389, 400, - -1, -1, -1, -1, -1, -1, -1, 56, 391, 177, - 392, 397, 393, 155, 394, 66, 395, 174, 396, 399, - -1, -1, 89, 398, 174, -1, -1, 59, 174, -1, - -1, -1, -1, 87, 401, 403, 402, 88, -1, 403, - 404, -1, -1, 162, -1, -1, 407, 405, 86, -1, - -1, 410, 406, 86, -1, -1, -1, 44, 177, 408, - 323, 409, 343, -1, -1, -1, 54, 177, 411, 323, - 412, 343, -1, 426, -1, 417, -1, 414, -1, 416, - -1, 415, -1, 53, 177, -1, 42, 53, 177, -1, - -1, -1, -1, 421, 424, 418, 87, 419, 161, 420, - 88, -1, 42, 53, 177, -1, 43, 53, 177, -1, - 53, 177, -1, -1, 138, 425, 155, -1, -1, -1, - -1, 430, 424, 427, 87, 428, 158, 429, 88, -1, - 422, -1, 423, -1, 67, -1, 20, -1, 53, -1, - 68, -1, 17, -1, 24, -1, 6, -1, 49, -1, - -1, -1, -1, 436, 433, 87, 434, 161, 435, 88, - -1, 135, 437, 443, -1, -1, -1, 104, 438, 442, - 440, 439, 103, -1, -1, 440, 90, 441, 442, -1, - -1, 431, 3, -1, 89, 444, -1, -1, 446, 445, - -1, 445, 90, 446, -1, -1, 174, 104, 447, 103, - -1, 449, 448, -1, 448, 90, 449, -1, -1, 3, - -1, -1, -1, -1, -1, -1, 71, 451, 3, 452, - 456, 453, 87, 454, 457, 455, 88, -1, 437, -1, - -1, 459, 458, -1, 458, 459, -1, -1, -1, 462, - 460, 86, -1, -1, 463, 461, 86, -1, 379, -1, - 380, 447, 3, -1, 382, -1, 383, 381, 447, 3, - -1 + 381, 374, 86, -1, -1, 384, 375, 86, -1, -1, + 385, 376, 86, -1, -1, 386, 377, 86, -1, -1, + 296, 378, 86, -1, 60, 380, 177, -1, 174, -1, + 19, -1, 382, 380, 177, -1, 65, 383, -1, 58, + -1, -1, 52, 174, 177, -1, 61, 174, 177, -1, + 51, 174, 177, -1, -1, 389, 388, 399, -1, -1, + -1, -1, -1, -1, -1, 56, 390, 177, 391, 396, + 392, 155, 393, 66, 394, 174, 395, 398, -1, -1, + 89, 397, 174, -1, -1, 59, 174, -1, -1, -1, + -1, 87, 400, 402, 401, 88, -1, 402, 403, -1, + -1, 162, -1, -1, 406, 404, 86, -1, -1, 409, + 405, 86, -1, -1, -1, 44, 177, 407, 323, 408, + 343, -1, -1, -1, 54, 177, 410, 323, 411, 343, + -1, 425, -1, 416, -1, 413, -1, 415, -1, 414, + -1, 53, 177, -1, 42, 53, 177, -1, -1, -1, + -1, 420, 423, 417, 87, 418, 161, 419, 88, -1, + 42, 53, 177, -1, 43, 53, 177, -1, 53, 177, + -1, -1, 138, 424, 155, -1, -1, -1, -1, 429, + 423, 426, 87, 427, 158, 428, 88, -1, 421, -1, + 422, -1, 67, -1, 20, -1, 53, -1, 68, -1, + 17, -1, 24, -1, 6, -1, 49, -1, -1, -1, + -1, 435, 432, 87, 433, 161, 434, 88, -1, 135, + 436, 442, -1, -1, -1, 104, 437, 441, 439, 438, + 103, -1, -1, 439, 90, 440, 441, -1, -1, 430, + 3, -1, 89, 443, -1, -1, 445, 444, -1, 444, + 90, 445, -1, -1, 174, 104, 446, 103, -1, 448, + 447, -1, 447, 90, 448, -1, -1, 3, -1, -1, + -1, -1, -1, -1, 71, 450, 3, 451, 455, 452, + 87, 453, 456, 454, 88, -1, 436, -1, -1, 458, + 457, -1, 457, 458, -1, -1, -1, 461, 459, 86, + -1, -1, 462, 460, 86, -1, 379, -1, 60, 445, + 3, -1, 381, -1, 382, 445, 3, -1 }; /* TAO_YYRLINE[TAO_YYN] -- source line where rule number TAO_YYN was defined. */ @@ -899,18 +897,17 @@ static const tao_yytype_uint16 tao_yyrline[] = 4512, 4541, 4579, 4580, 4584, 4614, 4654, 4659, 4613, 4678, 4683, 4676, 4725, 4724, 4735, 4742, 4743, 4748, 4747, 4758, 4757, 4768, 4767, 4778, 4777, 4788, 4787, 4798, 4797, 4809, - 4876, 4886, 4893, 4917, 4992, 5002, 5008, 5015, 5078, 5141, - 5205, 5204, 5254, 5259, 5264, 5269, 5274, 5279, 5253, 5333, - 5332, 5343, 5350, 5357, 5365, 5370, 5364, 5382, 5383, 5387, - 5389, 5388, 5399, 5398, 5413, 5449, 5411, 5483, 5519, 5481, - 5551, 5552, 5553, 5557, 5558, 5562, 5590, 5621, 5666, 5671, - 5619, 5688, 5698, 5717, 5729, 5728, 5768, 5818, 5823, 5766, - 5840, 5845, 5853, 5858, 5863, 5868, 5873, 5886, 5891, 5896, - 5905, 5927, 5932, 5904, 5949, 5967, 5972, 5966, 5995, 5994, - 6016, 6023, 6037, 6043, 6050, 6069, 6086, 6093, 6103, 6114, - 6138, 6145, 6156, 6161, 6166, 6170, 6175, 6155, 6187, 6192, - 6198, 6205, 6210, 6217, 6216, 6225, 6224, 6235, 6240, 6253, - 6258 + 4876, 4883, 4907, 4982, 4992, 4998, 5005, 5068, 5131, 5195, + 5194, 5244, 5249, 5254, 5259, 5264, 5269, 5243, 5323, 5322, + 5333, 5340, 5347, 5355, 5360, 5354, 5372, 5373, 5377, 5379, + 5378, 5389, 5388, 5403, 5439, 5401, 5473, 5509, 5471, 5541, + 5542, 5543, 5547, 5548, 5552, 5580, 5611, 5656, 5661, 5609, + 5678, 5688, 5707, 5719, 5718, 5758, 5808, 5813, 5756, 5830, + 5835, 5843, 5848, 5853, 5858, 5863, 5876, 5881, 5886, 5895, + 5917, 5922, 5894, 5939, 5957, 5962, 5956, 5985, 5984, 6006, + 6013, 6027, 6033, 6040, 6059, 6076, 6083, 6093, 6104, 6128, + 6135, 6146, 6151, 6156, 6160, 6165, 6145, 6177, 6182, 6188, + 6195, 6200, 6207, 6206, 6215, 6214, 6225, 6230, 6243, 6248 }; #endif @@ -991,26 +988,26 @@ static const char *const tao_yytname[] = "component_decl", "@127", "@128", "@129", "component_header", "@130", "@131", "component_inheritance_spec", "@132", "component_exports", "component_export", "@133", "@134", "@135", "@136", "@137", "@138", - "provides_decl", "provides_type", "interface_type", "uses_decl", - "uses_opt_multiple", "opt_multiple", "emits_decl", "publishes_decl", - "consumes_decl", "home_decl", "@139", "home_header", "@140", "@141", - "@142", "@143", "@144", "@145", "home_inheritance_spec", "@146", - "primary_key_spec", "home_body", "@147", "@148", "home_exports", - "home_export", "@149", "@150", "factory_decl", "@151", "@152", - "finder_decl", "@153", "@154", "event", "event_forward_decl", - "event_concrete_forward_decl", "event_abs_forward_decl", - "event_abs_decl", "@155", "@156", "@157", "event_abs_header", - "event_custom_header", "event_plain_header", "event_rest_of_header", - "@158", "event_decl", "@159", "@160", "@161", "event_header", - "type_classifier", "template_interface_def", "@162", "@163", "@164", - "template_interface_header", "at_least_one_template_param", "@165", - "@166", "template_params", "@167", "template_param", - "template_inheritance_spec", "at_least_one_template_ref", - "template_refs", "template_ref", "at_least_one_template_param_ref", - "template_param_refs", "template_param_ref", "porttype_decl", "@168", - "@169", "@170", "@171", "@172", "opt_template_params", - "at_least_one_port_export", "port_exports", "port_export", "@173", - "@174", "extended_provides_decl", "extended_uses_decl", 0 + "provides_decl", "interface_type", "uses_decl", "uses_opt_multiple", + "opt_multiple", "emits_decl", "publishes_decl", "consumes_decl", + "home_decl", "@139", "home_header", "@140", "@141", "@142", "@143", + "@144", "@145", "home_inheritance_spec", "@146", "primary_key_spec", + "home_body", "@147", "@148", "home_exports", "home_export", "@149", + "@150", "factory_decl", "@151", "@152", "finder_decl", "@153", "@154", + "event", "event_forward_decl", "event_concrete_forward_decl", + "event_abs_forward_decl", "event_abs_decl", "@155", "@156", "@157", + "event_abs_header", "event_custom_header", "event_plain_header", + "event_rest_of_header", "@158", "event_decl", "@159", "@160", "@161", + "event_header", "type_classifier", "template_interface_def", "@162", + "@163", "@164", "template_interface_header", + "at_least_one_template_param", "@165", "@166", "template_params", "@167", + "template_param", "template_inheritance_spec", + "at_least_one_template_ref", "template_refs", "template_ref", + "at_least_one_template_param_ref", "template_param_refs", + "template_param_ref", "porttype_decl", "@168", "@169", "@170", "@171", + "@172", "opt_template_params", "at_least_one_port_export", + "port_exports", "port_export", "@173", "@174", "extended_provides_decl", + "extended_uses_decl", 0 }; #endif @@ -1078,18 +1075,17 @@ static const tao_yytype_uint16 tao_yyr1[] = 358, 359, 360, 360, 361, 363, 364, 365, 362, 367, 368, 366, 370, 369, 369, 371, 371, 373, 372, 374, 372, 375, 372, 376, 372, 377, 372, 378, 372, 379, - 380, 381, 381, 382, 383, 384, 384, 385, 386, 387, - 389, 388, 391, 392, 393, 394, 395, 396, 390, 398, - 397, 397, 399, 399, 401, 402, 400, 403, 403, 404, - 405, 404, 406, 404, 408, 409, 407, 411, 412, 410, - 413, 413, 413, 414, 414, 415, 416, 418, 419, 420, - 417, 421, 422, 423, 425, 424, 427, 428, 429, 426, - 430, 430, 431, 431, 431, 431, 431, 431, 431, 431, - 433, 434, 435, 432, 436, 438, 439, 437, 441, 440, - 440, 442, 443, 443, 444, 445, 445, 446, 447, 448, - 448, 449, 451, 452, 453, 454, 455, 450, 456, 456, - 457, 458, 458, 460, 459, 461, 459, 462, 462, 463, - 463 + 380, 380, 381, 382, 383, 383, 384, 385, 386, 388, + 387, 390, 391, 392, 393, 394, 395, 389, 397, 396, + 396, 398, 398, 400, 401, 399, 402, 402, 403, 404, + 403, 405, 403, 407, 408, 406, 410, 411, 409, 412, + 412, 412, 413, 413, 414, 415, 417, 418, 419, 416, + 420, 421, 422, 424, 423, 426, 427, 428, 425, 429, + 429, 430, 430, 430, 430, 430, 430, 430, 430, 432, + 433, 434, 431, 435, 437, 438, 436, 440, 439, 439, + 441, 442, 442, 443, 444, 444, 445, 446, 447, 447, + 448, 450, 451, 452, 453, 454, 449, 455, 455, 456, + 457, 457, 459, 458, 460, 458, 461, 461, 462, 462 }; /* TAO_YYR2[TAO_YYN] -- Number of symbols composing right hand side of rule TAO_YYN. */ @@ -1136,19 +1132,18 @@ static const tao_yytype_uint8 tao_yyr2[] = 6, 0, 0, 0, 6, 0, 2, 0, 4, 0, 3, 3, 1, 1, 2, 0, 0, 0, 7, 0, 0, 6, 0, 3, 0, 2, 0, 0, 3, 0, - 3, 0, 3, 0, 3, 0, 3, 0, 3, 2, - 2, 1, 1, 3, 2, 1, 0, 3, 3, 3, - 0, 3, 0, 0, 0, 0, 0, 0, 13, 0, - 3, 0, 2, 0, 0, 0, 5, 2, 0, 1, - 0, 3, 0, 3, 0, 0, 6, 0, 0, 6, - 1, 1, 1, 1, 1, 2, 3, 0, 0, 0, - 8, 3, 3, 2, 0, 3, 0, 0, 0, 8, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 0, 0, 0, 7, 3, 0, 0, 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, - 4 + 3, 0, 3, 0, 3, 0, 3, 0, 3, 3, + 1, 1, 3, 2, 1, 0, 3, 3, 3, 0, + 3, 0, 0, 0, 0, 0, 0, 13, 0, 3, + 0, 2, 0, 0, 0, 5, 2, 0, 1, 0, + 3, 0, 3, 0, 0, 6, 0, 0, 6, 1, + 1, 1, 1, 1, 2, 3, 0, 0, 0, 8, + 3, 3, 2, 0, 3, 0, 0, 0, 8, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, + 0, 0, 7, 3, 0, 0, 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 }; /* TAO_YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1158,80 +1153,80 @@ static const tao_yytype_uint16 tao_yydefact[] = { 4, 0, 0, 1, 31, 115, 33, 44, 164, 224, 240, 275, 322, 0, 0, 0, 0, 68, 0, 0, - 432, 0, 0, 512, 3, 19, 15, 38, 51, 40, + 431, 0, 0, 511, 3, 19, 15, 38, 51, 40, 21, 52, 57, 53, 58, 51, 54, 55, 39, 11, 5, 170, 226, 166, 274, 167, 192, 193, 168, 13, - 7, 9, 23, 393, 392, 395, 25, 430, 27, 462, - 464, 463, 461, 51, 480, 481, 460, 51, 17, 490, + 7, 9, 23, 393, 392, 395, 25, 429, 27, 461, + 463, 462, 460, 51, 479, 480, 459, 51, 17, 489, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 204, 169, 51, 0, 51, 62, 51, 0, 56, - 51, 0, 399, 473, 0, 107, 0, 106, 0, 0, - 0, 0, 71, 495, 46, 503, 0, 0, 0, 208, + 51, 0, 399, 472, 0, 107, 0, 106, 0, 0, + 0, 0, 71, 494, 46, 502, 0, 0, 0, 208, 210, 0, 214, 215, 218, 219, 220, 221, 217, 222, 223, 289, 296, 301, 66, 177, 76, 173, 175, 176, 174, 178, 206, 207, 179, 183, 180, 182, 181, 184, 185, 226, 189, 0, 190, 191, 186, 0, 187, 295, 188, 300, 0, 0, 0, 242, 0, 0, 0, 0, - 0, 0, 0, 0, 474, 467, 476, 0, 0, 0, + 0, 0, 0, 0, 473, 466, 475, 0, 0, 0, 32, 128, 116, 120, 124, 125, 121, 122, 123, 126, 127, 34, 45, 165, 171, 225, 241, 276, 323, 47, - 471, 48, 0, 472, 69, 404, 433, 0, 390, 109, - 391, 513, 20, 16, 70, 49, 0, 0, 494, 41, + 470, 48, 0, 471, 69, 404, 432, 0, 390, 109, + 391, 512, 20, 16, 70, 49, 0, 0, 493, 41, 22, 59, 209, 216, 211, 213, 0, 73, 285, 288, 292, 297, 12, 6, 227, 0, 14, 8, 10, 24, - 396, 26, 444, 431, 28, 73, 0, 0, 18, 491, - 30, 0, 0, 0, 0, 0, 63, 402, 400, 441, - 108, 0, 519, 0, 488, 486, 483, 487, 489, 484, - 482, 485, 0, 500, 0, 502, 506, 85, 78, 212, - 290, 0, 67, 0, 0, 0, 233, 243, 406, 448, - 475, 468, 477, 85, 117, 35, 204, 172, 197, 198, - 199, 205, 277, 324, 85, 0, 73, 439, 434, 110, - 518, 514, 50, 105, 501, 496, 0, 504, 0, 0, + 396, 26, 443, 430, 28, 73, 0, 0, 18, 490, + 30, 0, 0, 0, 0, 0, 63, 402, 400, 440, + 108, 0, 518, 0, 487, 485, 482, 486, 488, 483, + 481, 484, 0, 499, 0, 501, 505, 85, 78, 212, + 290, 0, 67, 0, 0, 0, 233, 243, 406, 447, + 474, 467, 476, 85, 117, 35, 204, 172, 197, 198, + 199, 205, 277, 324, 85, 0, 73, 438, 433, 110, + 517, 513, 50, 105, 500, 495, 0, 503, 0, 0, 0, 72, 154, 155, 156, 158, 160, 161, 162, 159, 157, 0, 0, 0, 0, 151, 163, 130, 131, 133, 135, 137, 140, 143, 147, 152, 286, 293, 298, 228, 232, 0, 0, 397, 0, 85, 78, 0, 0, 4, 0, 194, 0, 232, 0, 403, 401, 0, 73, 0, - 102, 498, 0, 511, 0, 510, 0, 100, 312, 317, + 102, 497, 0, 510, 0, 509, 0, 100, 312, 317, 332, 333, 0, 84, 92, 86, 96, 310, 311, 94, 98, 0, 88, 90, 337, 0, 0, 0, 77, 79, 80, 0, 291, 148, 149, 150, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 233, 238, 235, 234, 208, 254, 249, 250, 251, - 252, 244, 253, 0, 0, 0, 0, 426, 417, 0, - 405, 407, 0, 409, 0, 411, 413, 415, 0, 0, - 449, 0, 447, 450, 452, 0, 0, 0, 118, 0, - 307, 303, 306, 195, 284, 278, 283, 233, 0, 440, - 435, 515, 103, 0, 497, 507, 508, 505, 0, 0, - 0, 43, 0, 0, 0, 0, 0, 336, 366, 363, - 364, 365, 327, 335, 0, 0, 0, 83, 82, 61, - 81, 153, 132, 134, 136, 138, 139, 141, 142, 144, - 145, 146, 287, 294, 299, 229, 231, 0, 0, 0, - 0, 0, 422, 421, 420, 0, 425, 424, 0, 398, - 0, 419, 0, 0, 0, 0, 0, 454, 457, 446, - 0, 0, 0, 0, 493, 0, 0, 0, 304, 0, - 0, 280, 0, 65, 0, 0, 0, 499, 0, 101, - 313, 318, 93, 87, 97, 95, 99, 0, 89, 91, - 338, 239, 236, 245, 429, 427, 428, 418, 408, 410, - 423, 412, 414, 416, 0, 0, 451, 453, 470, 479, - 119, 129, 37, 308, 305, 196, 279, 281, 326, 436, - 527, 0, 529, 0, 516, 522, 523, 525, 104, 509, - 0, 0, 328, 0, 0, 0, 341, 455, 458, 0, - 0, 0, 511, 0, 0, 0, 520, 0, 0, 314, - 319, 203, 0, 339, 237, 246, 0, 0, 373, 373, - 309, 282, 437, 528, 0, 517, 521, 524, 526, 0, - 377, 200, 354, 329, 373, 0, 342, 349, 0, 348, - 370, 456, 459, 443, 530, 315, 374, 320, 201, 0, - 0, 373, 340, 261, 268, 266, 247, 257, 258, 265, - 0, 344, 345, 0, 0, 438, 373, 0, 381, 0, - 353, 367, 368, 369, 0, 359, 360, 330, 0, 0, - 0, 0, 0, 0, 263, 350, 346, 371, 442, 316, - 375, 378, 321, 202, 355, 356, 0, 385, 262, 269, - 267, 248, 256, 271, 259, 264, 0, 0, 0, 0, - 0, 357, 361, 382, 331, 0, 0, 0, 351, 347, - 0, 0, 379, 0, 0, 0, 270, 272, 260, 372, - 376, 0, 358, 362, 383, 0, 0, 380, 389, 0, - 386, 384, 387, 0, 388 + 252, 244, 253, 0, 0, 0, 0, 425, 417, 0, + 405, 407, 409, 0, 411, 413, 415, 0, 0, 448, + 0, 446, 449, 451, 0, 0, 0, 118, 0, 307, + 303, 306, 195, 284, 278, 283, 233, 0, 439, 434, + 514, 103, 0, 496, 506, 507, 504, 0, 0, 0, + 43, 0, 0, 0, 0, 0, 336, 366, 363, 364, + 365, 327, 335, 0, 0, 0, 83, 82, 61, 81, + 153, 132, 134, 136, 138, 139, 141, 142, 144, 145, + 146, 287, 294, 299, 229, 231, 0, 0, 0, 0, + 0, 421, 420, 0, 0, 424, 423, 0, 398, 0, + 0, 0, 0, 0, 0, 453, 456, 445, 0, 0, + 0, 0, 492, 0, 0, 0, 304, 0, 0, 280, + 0, 65, 0, 0, 0, 498, 0, 101, 313, 318, + 93, 87, 97, 95, 99, 0, 89, 91, 338, 239, + 236, 245, 428, 426, 419, 427, 418, 408, 410, 422, + 412, 414, 416, 0, 0, 450, 452, 469, 478, 119, + 129, 37, 308, 305, 196, 279, 281, 326, 435, 0, + 526, 528, 0, 515, 521, 522, 524, 104, 508, 0, + 0, 328, 0, 0, 0, 341, 454, 457, 0, 0, + 0, 420, 0, 0, 0, 519, 0, 0, 314, 319, + 203, 0, 339, 237, 246, 0, 0, 373, 373, 309, + 282, 436, 527, 529, 516, 520, 523, 525, 0, 377, + 200, 354, 329, 373, 0, 342, 349, 0, 348, 370, + 455, 458, 442, 315, 374, 320, 201, 0, 0, 373, + 340, 261, 268, 266, 247, 257, 258, 265, 0, 344, + 345, 0, 0, 437, 373, 0, 381, 0, 353, 367, + 368, 369, 0, 359, 360, 330, 0, 0, 0, 0, + 0, 0, 263, 350, 346, 371, 441, 316, 375, 378, + 321, 202, 355, 356, 0, 385, 262, 269, 267, 248, + 256, 271, 259, 264, 0, 0, 0, 0, 0, 357, + 361, 382, 331, 0, 0, 0, 351, 347, 0, 0, + 379, 0, 0, 0, 270, 272, 260, 372, 376, 0, + 358, 362, 383, 0, 0, 380, 389, 0, 386, 384, + 387, 0, 388 }; /* TAO_YYDEFGOTO[NTERM-NUM]. */ @@ -1239,40 +1234,40 @@ static const tao_yytype_int16 tao_yydefgoto[] = { -1, 1, 2, 24, 153, 157, 158, 152, 156, 101, 167, 100, 107, 159, 161, 163, 169, 71, 25, 73, - 242, 349, 536, 26, 27, 106, 267, 372, 28, 74, + 242, 349, 534, 26, 27, 106, 267, 372, 28, 74, 29, 124, 253, 30, 31, 32, 108, 268, 387, 33, - 192, 294, 458, 34, 217, 35, 91, 205, 272, 36, - 37, 309, 388, 389, 308, 373, 473, 484, 485, 472, - 475, 474, 476, 468, 302, 360, 546, 325, 197, 251, - 97, 38, 374, 72, 241, 348, 535, 172, 580, 326, + 192, 294, 457, 34, 217, 35, 91, 205, 272, 36, + 37, 309, 388, 389, 308, 373, 472, 483, 484, 471, + 474, 473, 475, 467, 302, 360, 544, 325, 197, 251, + 97, 38, 374, 72, 241, 348, 533, 172, 579, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 375, 75, 183, 243, 413, 127, 128, 129, 130, 41, - 287, 351, 539, 288, 620, 641, 679, 289, 290, 131, + 287, 351, 537, 288, 619, 640, 677, 289, 290, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 42, - 76, 43, 154, 276, 410, 339, 411, 506, 341, 414, - 508, 604, 507, 44, 77, 45, 225, 342, 509, 605, - 645, 691, 421, 666, 692, 667, 693, 727, 688, 668, - 694, 669, 690, 689, 725, 714, 726, 46, 47, 48, - 78, 244, 352, 540, 455, 541, 610, 456, 146, 273, + 76, 43, 154, 276, 410, 339, 411, 505, 341, 414, + 507, 603, 506, 44, 77, 45, 225, 342, 508, 604, + 644, 689, 421, 664, 690, 665, 691, 725, 686, 666, + 692, 667, 688, 687, 723, 712, 724, 46, 47, 48, + 78, 244, 352, 538, 454, 539, 609, 455, 146, 273, 407, 147, 216, 310, 148, 274, 408, 149, 150, 275, - 409, 151, 291, 350, 451, 538, 452, 537, 609, 376, - 377, 469, 600, 639, 676, 378, 470, 601, 640, 678, - 379, 79, 245, 353, 542, 380, 557, 622, 661, 707, - 381, 482, 391, 486, 603, 644, 607, 626, 627, 648, - 672, 717, 649, 670, 716, 643, 659, 660, 684, 705, - 733, 685, 706, 734, 483, 686, 651, 673, 718, 657, - 677, 719, 702, 720, 741, 724, 735, 746, 749, 750, - 753, 382, 383, 52, 53, 54, 160, 278, 429, 55, - 195, 296, 248, 295, 343, 430, 520, 522, 524, 525, - 526, 518, 590, 591, 514, 592, 593, 517, 435, 436, - 437, 56, 162, 57, 94, 249, 358, 544, 611, 653, - 298, 357, 675, 233, 279, 441, 344, 442, 530, 531, - 443, 574, 628, 444, 575, 629, 58, 59, 60, 61, - 62, 236, 345, 532, 63, 64, 65, 165, 235, 66, - 237, 346, 533, 67, 262, 68, 168, 283, 447, 69, - 105, 206, 362, 305, 463, 263, 208, 265, 307, 266, - 364, 466, 365, 70, 99, 252, 359, 545, 615, 301, - 594, 616, 595, 617, 618, 596, 597 + 409, 151, 291, 350, 450, 536, 451, 535, 608, 376, + 377, 468, 599, 638, 674, 378, 469, 600, 639, 676, + 379, 79, 245, 353, 540, 380, 555, 621, 659, 705, + 381, 481, 391, 485, 602, 643, 606, 625, 626, 647, + 670, 715, 648, 668, 714, 642, 657, 658, 682, 703, + 731, 683, 704, 732, 482, 684, 650, 671, 716, 655, + 675, 717, 700, 718, 739, 722, 733, 744, 747, 748, + 751, 382, 383, 52, 53, 54, 160, 278, 429, 55, + 195, 296, 248, 295, 343, 430, 519, 520, 522, 523, + 524, 517, 590, 513, 591, 592, 516, 434, 435, 436, + 56, 162, 57, 94, 249, 358, 542, 610, 652, 298, + 357, 673, 233, 279, 440, 344, 441, 528, 529, 442, + 573, 627, 443, 574, 628, 58, 59, 60, 61, 62, + 236, 345, 530, 63, 64, 65, 165, 235, 66, 237, + 346, 531, 67, 262, 68, 168, 283, 446, 69, 105, + 206, 362, 305, 462, 263, 208, 265, 307, 266, 364, + 465, 365, 70, 99, 252, 359, 543, 614, 301, 593, + 615, 594, 616, 617, 595, 596 }; /* TAO_YYPACT[STATE-NUM] -- Index in TAO_YYTABLE of the portion describing @@ -1280,221 +1275,229 @@ static const tao_yytype_int16 tao_yydefgoto[] = #define TAO_YYPACT_NINF -530 static const tao_yytype_int16 tao_yypact[] = { - -530, 38, 1142, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, 49, 74, 30, -8, -530, 49, 49, - -530, 57, 57, -530, -530, -530, -530, -530, 66, -530, - -530, -530, -530, -530, -530, 542, -530, -530, -530, -530, - -530, -530, -14, -530, 64, -530, -530, -530, -530, -530, + -530, 48, 1222, -530, -530, -530, -530, -530, -530, -530, + -530, -530, -530, 34, 93, 90, 51, -530, 34, 34, + -530, 37, 37, -530, -530, -530, -530, -530, 73, -530, + -530, -530, -530, -530, -530, 541, -530, -530, -530, -530, + -530, -530, -2, -530, 100, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, -1, -530, -530, -530, -1, -530, -530, - -530, 12, 246, 146, 49, 1115, 49, 49, 49, 49, - -530, -530, -530, 36, 49, 61, -530, 62, 49, -530, - -1, 49, 68, 105, 49, -530, -41, -530, 28, 183, - 113, 118, 167, -530, -530, 119, 132, 151, 152, 100, - -530, 98, -530, -530, -530, -530, -530, -530, -530, -530, + -530, -530, -530, 60, -530, -530, -530, 60, -530, -530, + -530, 70, 77, 162, 34, 1195, 34, 34, 34, 34, + -530, -530, -530, 12, 34, 19, -530, 78, 34, -530, + 60, 34, 82, 99, 34, -530, -38, -530, -9, 190, + 101, 127, 175, -530, -530, 153, 140, 157, 159, 155, + -530, 68, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, 166, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, 64, -530, -530, -530, 2, -530, 149, - -530, 162, 155, 178, 163, -530, 181, 182, 184, 187, - 188, 191, 192, 194, -530, -530, -530, 195, 197, 199, + -530, -530, -530, 100, -530, -530, -530, -41, -530, 149, + -530, 152, 164, 172, 173, -530, 176, 177, 178, 180, + 174, 182, 183, 185, -530, -530, -530, 187, 188, 191, -530, 166, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - 200, -530, 201, -530, -530, 180, -530, 49, -530, -530, - -530, -530, -530, -530, -530, -530, 165, 57, -530, -530, - -530, -530, -530, -530, 243, -530, 170, 231, -530, -530, - -530, -530, -530, -530, -530, 186, -530, -530, -530, -530, - -530, -530, -530, -530, -530, 231, 202, 206, -530, -530, - -530, 49, 210, 49, 211, 212, -530, -530, -530, 193, - -530, 49, 179, 57, -530, -530, -530, -530, -530, -530, - -530, -530, 297, -530, -42, -530, -530, -530, -530, -530, - -530, 57, -530, 39, 39, 39, -530, -530, -530, -530, - -530, -530, -530, -530, -530, -530, 198, -530, -530, -530, - -530, -530, -530, -530, -530, 57, 231, -530, -530, -530, - -530, -530, -530, 166, -530, 214, 298, 215, 880, 716, - 428, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, 52, 52, 52, 39, 166, -530, 216, 209, 213, - 75, 67, 44, -530, -530, -530, -530, -530, -530, -530, - -530, 1091, 87, 175, 369, -530, -530, 915, 218, -530, - 220, 224, 303, -530, 997, 166, -530, 57, 231, 228, - 227, -530, 223, -530, 226, -530, 57, -530, -530, -530, - -530, -530, 230, -530, -530, -530, -530, -530, -530, -530, - -530, 503, -530, -530, -530, 1091, 1091, 242, -530, -530, - -530, 233, -530, -530, -530, -530, 229, 39, 39, 39, - 39, 39, 39, 39, 39, 39, 39, 232, 234, 236, - 244, 245, -530, -530, -530, 326, 166, -530, -530, -530, - -530, -530, -530, 57, 57, 40, 57, 278, -530, 252, - -530, -530, 49, -530, 40, -530, -530, -530, 49, 49, - -530, 253, -530, -530, -530, 1032, 798, 254, -530, 160, - -530, -530, -530, -530, -530, -530, -530, 255, 256, 166, - -530, -530, -530, 165, -530, -530, 259, -530, 260, 314, - 756, -530, 264, 265, 266, 267, 270, -530, 166, -530, - -530, -530, -530, -530, 273, 277, 368, -530, -530, -530, - -530, -530, 209, 213, 75, 67, 67, 44, 44, -530, - -530, -530, -530, -530, -530, -530, -530, 289, 49, 291, - 65, 65, -530, 166, -530, 65, -530, -530, 305, -530, - 311, -530, 312, 49, 322, 325, 328, -530, -530, -530, - 330, 332, 324, 333, -530, 39, 334, 39, 220, 49, - 336, 337, 340, -530, 354, 22, 57, -530, 298, -530, - -530, -530, -530, -530, -530, -530, -530, 426, -530, -530, - -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, -530, 329, 329, -530, -530, -530, -530, + 192, -530, 194, -530, -530, 170, -530, 34, -530, -530, + -530, -530, -530, -530, -530, -530, 231, 37, -530, -530, + -530, -530, -530, -530, 261, -530, 168, 227, -530, -530, + -530, -530, -530, -530, -530, 181, -530, -530, -530, -530, + -530, -530, -530, -530, -530, 227, 196, 198, -530, -530, + -530, 34, 199, 34, 200, 203, -530, -530, -530, 208, + -530, 34, 197, 37, -530, -530, -530, -530, -530, -530, + -530, -530, 276, -530, -45, -530, -530, -530, -530, -530, + -530, 37, -530, 36, 36, 36, -530, -530, -530, -530, + -530, -530, -530, -530, -530, -530, 195, -530, -530, -530, + -530, -530, -530, -530, -530, 37, 227, -530, -530, -530, + -530, -530, -530, 166, -530, 212, 286, 213, 960, 714, + 186, -530, -530, -530, -530, -530, -530, -530, -530, -530, + -530, 49, 49, 49, 36, 166, -530, 214, 211, 215, + 24, 80, 81, -530, -530, -530, -530, -530, -530, -530, + -530, 1171, 138, 184, 878, -530, -530, 995, 201, -530, + 207, 217, 302, -530, 1077, 166, -530, 37, 227, 228, + 224, -530, 216, -530, 222, -530, 37, -530, -530, -530, + -530, -530, 229, -530, -530, -530, -530, -530, -530, -530, + -530, 501, -530, -530, -530, 1171, 1171, 230, -530, -530, + -530, 240, -530, -530, -530, -530, 225, 36, 36, 36, + 36, 36, 36, 36, 36, 36, 36, 226, 232, 233, + 242, 243, -530, -530, -530, 324, 166, -530, -530, -530, + -530, -530, -530, 37, 37, 38, 37, 275, -530, 246, + -530, -530, -530, 38, -530, -530, -530, 34, 34, -530, + 249, -530, -530, -530, 1112, 796, 251, -530, 370, -530, + -530, -530, -530, -530, -530, -530, 252, 253, 166, -530, + -530, -530, 231, -530, -530, 255, -530, 256, 312, 587, + -530, 260, 262, 263, 264, 265, -530, 166, -530, -530, + -530, -530, -530, 266, 267, 353, -530, -530, -530, -530, + -530, 211, 215, 24, 80, 80, 81, 81, -530, -530, + -530, -530, -530, -530, -530, -530, 273, 34, 268, 57, + 57, -530, 166, 34, 57, -530, -530, 277, -530, 287, + 292, 34, 293, 294, 295, -530, -530, -530, 296, 297, + 284, 298, -530, 36, 299, 36, 207, 34, 300, 304, + 301, -530, 318, 14, 37, -530, 286, -530, -530, -530, + -530, -530, -530, -530, -530, 389, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, 431, -530, 40, -530, -530, -530, -530, 166, -530, - 756, 49, -530, 329, 349, 361, 414, -530, -530, 352, - 303, 57, 373, 458, 431, 375, 22, 379, 380, -530, - -530, -530, 370, -530, -530, -530, 367, 435, 434, 434, - -530, -530, 166, -530, 470, -530, -530, -530, -530, 49, - 419, 385, 374, -530, 434, 48, -530, -530, 377, -530, - -530, -530, -530, 418, -530, -530, -530, -530, -530, 378, - 137, 434, -530, -530, -530, -530, -530, -530, -530, -530, - 756, -530, 391, 381, 57, -530, 434, 382, 422, 49, - -530, -530, -530, -530, 383, -530, -530, -530, 400, 39, - 398, 401, 56, 1115, 147, -530, -530, -530, 166, -530, - -530, -530, -530, -530, -530, 402, 756, 449, -530, -530, - -530, -530, -530, -530, -530, -530, 49, 435, 57, 57, - 389, -530, -530, -530, -530, 404, 49, 405, -530, -530, - 392, 394, -530, 137, 49, 399, -530, -530, -530, -530, - -530, 57, -530, -530, -530, 397, 425, -530, -530, 403, - 413, -530, -530, 432, -530 + -530, -530, -530, 307, 307, -530, -530, -530, -530, -530, + -530, -530, -530, -530, -530, -530, -530, -530, -530, 38, + -530, -530, 38, -530, -530, -530, -530, 166, -530, 587, + 34, -530, 307, 309, 311, 361, -530, -530, 315, 302, + 37, -45, 396, 397, 313, 14, 316, 317, -530, -530, + -530, 314, -530, -530, -530, 320, 382, 380, 380, -530, + -530, 166, -530, -530, -530, -530, -530, -530, 34, 372, + 338, 327, -530, 380, 41, -530, -530, 328, -530, -530, + -530, -530, 373, -530, -530, -530, -530, 329, 146, 380, + -530, -530, -530, -530, -530, -530, -530, -530, 587, -530, + 345, 335, 37, -530, 380, 336, 376, 34, -530, -530, + -530, -530, 337, -530, -530, -530, 354, 36, 355, 357, + 54, 1195, 116, -530, -530, -530, 166, -530, -530, -530, + -530, -530, -530, 352, 587, 404, -530, -530, -530, -530, + -530, -530, -530, -530, 34, 382, 37, 37, 346, -530, + -530, -530, -530, 359, 34, 360, -530, -530, 347, 349, + -530, 146, 34, 351, -530, -530, -530, -530, -530, 37, + -530, -530, -530, 358, 381, -530, -530, 362, 366, -530, + -530, 386, -530 }; /* TAO_YYPGOTO[NTERM-NUM]. */ static const tao_yytype_int16 tao_yypgoto[] = { - -530, -530, 158, -530, -530, -530, -530, -530, -530, -530, + -530, -530, 118, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, -530, -530, -530, -530, -530, 164, -530, - -530, 6, -530, -530, -530, 488, -530, -530, -530, -530, - -530, -530, -530, 508, -530, 196, -530, -530, -202, -530, - -530, 185, -530, -530, -246, -277, -530, -530, -530, -530, + -530, -530, -530, -530, -530, -530, -530, -530, 158, -530, + -530, 107, -530, -530, -530, 449, -530, -530, -530, -530, + -530, -530, -530, 453, -530, 202, -530, -530, -201, -530, + -530, 123, -530, -530, -248, -276, -530, -530, -530, -530, -530, -530, -530, -530, -263, -530, -530, -19, -530, -530, - -13, -530, 11, -530, -530, -530, -530, -530, -530, -315, - -530, 127, 134, 126, -179, -159, -211, -125, -530, -247, - 13, -530, -530, -530, -24, 225, -358, -530, -530, -530, - 25, -530, -530, -509, -109, -530, -530, -12, -530, -50, - -530, -530, 462, 464, -48, -47, -46, -530, -530, -28, - -530, -25, -530, -530, -530, -530, 189, 262, -530, -140, + -13, -530, 7, -530, -530, -530, -530, -530, -530, -302, + -530, 74, 72, 75, -175, -170, -197, -101, -530, -247, + 11, -530, -530, -530, -24, 163, -360, -530, -530, -530, + -35, -530, -530, -508, -163, -530, -530, -12, -530, -49, + -530, -530, 405, 406, -48, -47, -46, -530, -530, -28, + -530, -25, -530, -530, -530, -530, 126, 204, -530, -145, -530, -530, -530, -21, -530, -17, -530, -530, -530, -530, - -530, -530, -530, -530, -530, -153, -530, -530, -530, -530, - -530, -151, -530, -530, -530, -530, -530, -530, -530, -31, - -530, -530, -530, -530, -530, -530, -530, -69, -530, -530, + -530, -530, -530, -530, -530, -209, -530, -530, -530, -530, + -530, -210, -530, -530, -530, -530, -530, -530, -530, -31, + -530, -530, -530, -530, -530, -530, -530, -126, -530, -530, -530, -530, -530, -530, -60, -530, -530, -530, -53, -530, - -530, -530, -530, -530, -530, -530, 8, -530, -530, 205, + -530, -530, -530, -530, -530, -530, -52, -530, -530, 142, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - 15, -530, -530, -530, -530, -530, -530, -530, -530, -530, + 13, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -529, -530, -530, -530, - -530, -530, -173, -530, -530, -530, -530, -530, -530, -530, - -530, -184, -530, -530, -441, -530, -484, -530, -530, -530, + -530, -530, -229, -530, -530, -530, -530, -530, -530, -530, + -530, -244, -530, -530, -439, -530, -488, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, 18, 19, -530, -530, -530, -530, -530, -530, -530, + -530, 15, 18, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, 221, 237, -403, 239, 240, -530, -530, -530, + -530, -530, 145, -401, 147, 148, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -530, -530, -530, -530, -530, 502, -530, -530, - -530, -530, -530, -530, -530, -530, -530, -530, -530, -530, - 318, -530, -530, -530, -530, 108, -530, -530, -530, 207, - -521, -530, 24, -530, -530, -530, -530, -530, -530, -530, - -530, -530, -40, -530, -530, -530, -530 + -530, -530, -530, -530, -530, -530, 422, -530, -530, -530, + -530, -530, -530, -530, -530, -530, -530, -530, -530, 241, + -530, -530, -530, -530, 30, -530, -530, -530, -335, -530, + -530, -51, -530, -530, -530, -530, -530, -530, -530, -530, + -530, -117, -530, -530, -530, -530 }; /* TAO_YYTABLE[TAO_YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what TAO_YYDEFACT says. If TAO_YYTABLE_NINF, syntax error. */ -#define TAO_YYTABLE_NINF -493 +#define TAO_YYTABLE_NINF -492 static const tao_yytype_int16 tao_yytable[] = { - 81, 82, 96, 98, 145, 92, 93, 141, 311, 396, - 142, 126, 179, 39, 143, 40, 125, 49, 144, 180, - 50, 51, 173, 479, 176, 177, 178, 337, 338, 551, - 585, 523, 390, 280, 104, 198, 7, 347, 3, 199, - 199, 17, 80, 80, 145, 88, 608, 141, 354, 663, - 142, 184, 80, 171, 143, 80, 125, 663, 144, 512, - 80, 182, 306, 185, 186, 187, 188, 440, 80, 164, - 613, 190, -273, 164, 623, 193, 664, 665, 194, 17, - 7, 196, 425, 84, 664, 665, 155, 427, 102, 189, - 80, 191, 218, 634, 356, 415, 110, 111, 170, 445, - 114, 115, 116, 117, 200, 219, 214, 215, 212, 199, - 11, 213, 479, 312, 313, 314, 315, 316, 317, 318, - 95, 95, -113, 319, 320, 102, 312, 313, 314, 315, - 316, 317, 318, 95, 321, 322, 319, 320, 95, 323, - 324, 404, 405, 406, -255, 652, 199, -114, -74, 181, - 102, 102, -112, 324, -394, 102, 460, 400, 401, 619, - 662, 4, 402, 403, 5, 6, 7, 8, 95, 390, - 103, 254, 681, 682, 683, 664, 665, 687, 83, 85, - 9, 10, 255, 11, 250, 256, 201, 12, 264, 257, - 614, -465, 699, 499, 500, 501, 393, 394, 395, 202, - 13, 14, 15, 16, 203, 368, 369, 728, 207, 17, - 18, 87, 90, 19, 258, 204, 20, 737, 259, 209, - 581, 495, 496, 21, 22, 743, 423, 424, 284, 695, - 286, 23, 260, 261, 303, 425, 426, 210, 299, 211, - 427, 222, 479, 497, 498, 487, 488, 199, -36, 80, - 224, 269, 303, 220, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 223, 722, 221, 226, 227, 247, - 228, 122, 123, 229, 270, 230, 355, 231, 271, 232, - 234, 238, 297, 103, 239, 240, -466, 277, 246, 281, - 583, 125, 417, 282, 418, 419, 420, 285, 292, 293, - 304, 363, 398, -302, 361, 366, 454, 399, 397, 448, - 145, 422, 479, 141, 453, 461, 142, 462, 471, 490, - 143, 480, 125, 416, 144, 450, 464, 95, 481, 465, - 489, 491, 505, -230, 212, 502, 516, 503, 459, 504, - 519, 529, 534, -325, 543, 550, 549, 264, 479, 548, - 552, 553, 554, 555, 145, 145, 556, 141, 141, 558, - 142, 142, 478, 559, 143, 143, 125, 125, 144, 144, - 367, 560, -334, 5, 709, 561, 8, -334, -334, -334, - -334, -334, -334, -334, -334, -334, -334, -334, -334, 9, - 10, 567, 11, 563, -334, -334, 12, 568, 569, 368, - 369, 370, 371, -334, 510, 511, 513, 515, 571, 13, - 480, 572, 578, 438, 573, 513, 576, 481, 577, 521, - 589, 579, 582, 439, 586, 527, 528, 587, 588, 602, - 606, 80, 21, 22, 612, 624, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 625, -343, - -334, 478, 121, 122, 123, 730, 731, -445, 630, -111, - 39, 633, 40, 635, 49, 637, 638, 50, 51, 646, - 647, 642, 650, 654, 656, 658, -352, 674, 745, 671, - 680, 696, 697, 700, 701, 704, 708, 710, 723, 711, - 732, 738, 721, 736, 739, 286, 740, 564, 565, 747, - 744, 748, 566, 752, 89, 751, 80, 449, 754, 95, - 570, 109, 110, 111, 112, 113, 114, 115, 116, 117, - 118, 119, 120, 86, 492, 494, 286, 598, 122, 123, - 655, 446, 493, 562, 174, 392, 175, 477, 340, 712, - 480, 631, 457, 715, 729, 80, 584, 481, 428, 742, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 9, 10, 431, 11, 121, 122, 123, 166, - 300, 547, 599, 467, 513, 0, 636, 0, 521, 0, - 432, 478, 433, 434, 95, 0, 0, 0, 81, 621, - 0, 0, 632, 0, 0, 0, 0, 0, 0, 0, - 0, 570, 0, 0, 0, 0, 0, 0, 0, 0, - 480, 0, 0, 0, 0, 0, 0, 481, 0, 0, - 0, 0, 0, 95, 0, 0, 81, 621, -75, 0, - 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 480, 0, 0, 0, - 0, 478, 0, 481, 0, 698, 0, 0, 0, 0, - 0, 0, 145, 0, 0, 141, 81, 703, 142, 713, - 0, 0, 143, 0, 125, 0, 144, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 478, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 303, - 303, 0, 0, 286, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 286, 0, 0, 0, 367, 0, -334, - 5, 286, 303, 8, -334, -334, -334, -334, -334, -334, + 81, 82, 96, 98, 145, 92, 93, 141, 311, 39, + 142, 126, 179, 40, 143, 49, 125, 50, 144, 180, + 51, 478, 396, 173, 176, 177, 178, 337, 338, 584, + 549, 466, 521, 390, 280, 347, 199, 80, 198, 80, + 80, 80, 661, 199, 145, 607, 354, 141, 3, 218, + 142, 184, 80, 171, 143, 661, 125, 511, 144, 306, + 80, 182, 219, 185, 186, 187, 188, 200, 439, 662, + 663, 190, 199, 622, 589, 193, 214, 215, 194, 427, + 80, 196, 662, 663, -273, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 356, 7, 444, -113, 7, + 17, 102, 122, 123, 88, -114, 400, 401, 102, 478, + 312, 313, 314, 315, 316, 317, 318, 95, 95, 95, + 319, 320, 155, 312, 313, 314, 315, 316, 317, 318, + 95, 321, 322, 319, 320, 104, 323, 324, 199, 17, + 651, 80, -255, 84, 662, 663, 415, 110, 111, 102, + 324, 114, 115, 116, 117, 660, 170, 459, 95, -112, + 618, 11, 102, 212, -74, 181, 213, 102, -394, 390, + 164, 685, 83, 85, 164, 402, 403, 103, 404, 405, + 406, 679, 680, 681, 250, -464, 697, 202, 264, 80, + 189, 521, 191, 201, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 726, 498, 499, 500, + 121, 122, 123, 203, 368, 369, 735, 87, 90, 95, + 393, 394, 395, 204, 741, 494, 495, 209, 284, 693, + 286, 580, 496, 497, 303, 423, 424, 254, 299, 478, + 486, 487, 207, 210, 425, 426, 211, 199, 255, 427, + 222, 256, 303, 220, 612, 257, 221, 613, 223, 247, + 224, 230, 226, 227, 228, 720, 229, 95, 231, 269, + 232, 234, 270, 238, 271, 239, 355, 240, -465, 304, + 258, 246, 277, 281, 259, 282, 285, 292, 582, 363, + 293, 125, 447, 417, 418, 419, 420, 297, 260, 261, + -302, 103, 361, 366, 398, 453, 397, 452, 478, 399, + 145, 422, 449, 141, 461, 460, 142, 470, 488, 463, + 143, 479, 125, 416, 144, 464, 489, 490, 480, 501, + 504, -230, 212, 515, 518, 502, 503, 527, 458, 532, + -325, 541, 547, 548, 478, 546, 550, 264, 551, 552, + 553, 554, 556, 557, 145, 145, 558, 141, 141, 559, + 142, 142, 477, 566, 143, 143, 125, 125, 144, 144, + 561, 4, 577, 567, 5, 6, 7, 8, 568, 570, + 571, 572, 575, 576, 588, 707, 578, 581, 585, 587, + 9, 10, 601, 11, 586, 623, -343, 12, 624, 632, + 633, 634, 636, 637, 509, 510, 512, 514, 605, 479, + 13, 14, 15, 16, 512, 641, 480, 646, 649, 17, + 18, 629, 645, 19, 525, 526, 20, 654, 656, -352, + 669, 678, 672, 21, 22, 694, 695, 698, 699, 702, + 706, 23, 719, 721, 708, 709, 736, 730, 734, 737, + 477, 738, 742, 728, 729, 39, 750, 746, -36, 40, + 745, 49, 752, 50, 749, 89, 51, 448, 86, 445, + 492, 491, 560, 392, 493, 653, 743, 174, 175, 456, + 340, 710, 713, 630, 583, 428, 727, 740, 431, 166, + 432, 433, 545, 300, 286, 598, 562, 563, 635, 0, + 564, 565, 0, 0, 80, 0, 0, 0, 569, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 0, 0, 0, 286, 597, 122, 123, 0, 0, + 0, 0, 0, 0, 0, 476, 0, 0, 0, 479, + 0, 0, 0, 0, 80, 0, 480, 0, 0, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 9, 10, 0, 11, 121, 122, 123, 0, 0, + 611, 0, 0, 611, 0, 0, 0, 0, 0, 0, + 477, 0, 95, 0, 0, 0, 0, 81, 620, 0, + 80, 631, 0, 0, 0, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 0, 479, 0, + 0, 0, 122, 123, 0, 480, 0, 0, 0, 0, + 0, 0, 95, 0, 0, 81, 620, -75, 0, 0, + 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 479, 0, 0, 0, 0, 477, + 0, 480, 0, 696, 0, 0, 0, 0, 0, 0, + 145, 0, 0, 141, 81, 701, 142, 711, 95, 0, + 143, 0, 125, 0, 144, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 477, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 303, 303, 0, + 0, 286, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 286, 0, 0, 0, 367, 0, -334, 5, 286, + 303, 8, -334, -334, -334, -334, -334, -334, -334, -334, + -334, -334, -334, -334, 9, 10, 0, 11, 0, -334, + -334, 12, 0, 0, 368, 369, 370, 371, -334, 0, + 0, 0, 0, 0, 13, 0, 0, 0, 384, 385, + 386, 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, -334, 0, 367, 0, -334, + 5, 0, -60, 8, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 9, 10, 0, 11, 0, -334, -334, 12, 0, 0, 368, 369, 370, 371, - -334, 0, 0, 0, 0, 0, 13, 0, 0, 80, - 384, 385, 386, 0, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 0, 0, 0, 21, - 22, 122, 123, 0, 0, 0, 0, 0, 0, 0, + -334, 0, 0, 0, 0, 0, 13, 0, 0, 0, + 384, 385, 386, 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, -334, 0, 367, - 0, -334, 5, 0, -60, 8, -334, -334, -334, -334, + 0, -334, 5, 0, -477, 8, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 9, 10, 0, 11, 0, -334, -334, 12, 0, 0, 368, 369, - 370, 371, -334, 0, 0, 0, 0, 95, 13, 0, - 0, 0, 384, 385, 386, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 370, 371, -334, 0, 0, 0, 0, 0, 13, 0, + 0, 0, 437, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 438, 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, -334, - 0, 367, 0, -334, 5, 0, -478, 8, -334, -334, + 0, 367, 0, -334, 5, 0, -444, 8, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 9, 10, 0, 11, 0, -334, -334, 12, 0, 0, 368, 369, 370, 371, -334, 0, 367, 0, -334, 5, @@ -1506,7 +1509,7 @@ static const tao_yytype_int16 tao_yytable[] = 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, -334, 0, 367, 0, - -334, 5, 0, -492, 8, -334, -334, -334, -334, -334, + -334, 5, 0, -491, 8, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, -334, 9, 10, 0, 11, 0, -334, -334, 12, 0, 0, 368, 369, 370, 371, -334, 0, 367, 0, -334, 5, 13, 0, 8, @@ -1518,7 +1521,7 @@ static const tao_yytype_int16 tao_yytable[] = 0, 0, 412, 0, 80, 21, 22, 0, 0, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 9, 10, -334, 11, 121, 122, 123, 80, 0, - -469, 0, 0, 109, 110, 111, 112, 113, 114, 115, + -468, 0, 0, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 9, 10, 0, 11, 121, 122, 123, -2, 4, 0, 0, 5, 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1532,92 +1535,100 @@ static const tao_yytype_int16 tao_yytable[] = static const tao_yytype_int16 tao_yycheck[] = { - 13, 13, 21, 22, 35, 18, 19, 35, 271, 324, + 13, 13, 21, 22, 35, 18, 19, 35, 271, 2, 35, 35, 72, 2, 35, 2, 35, 2, 35, 72, - 2, 2, 72, 381, 72, 72, 72, 274, 275, 470, - 539, 434, 309, 235, 28, 76, 6, 283, 0, 81, - 81, 49, 3, 3, 75, 53, 575, 75, 294, 1, - 75, 75, 3, 72, 75, 3, 75, 1, 75, 19, - 3, 74, 104, 76, 77, 78, 79, 344, 3, 63, - 591, 84, 86, 67, 603, 88, 28, 29, 91, 49, - 6, 94, 60, 53, 28, 29, 22, 65, 89, 83, - 3, 85, 90, 614, 296, 8, 9, 10, 86, 345, - 13, 14, 15, 16, 76, 103, 8, 9, 8, 81, - 23, 11, 470, 74, 75, 76, 77, 78, 79, 80, - 81, 81, 86, 84, 85, 89, 74, 75, 76, 77, - 78, 79, 80, 81, 95, 96, 84, 85, 81, 100, - 101, 97, 98, 99, 88, 629, 81, 86, 86, 3, - 89, 89, 86, 101, 86, 89, 358, 82, 83, 600, - 644, 1, 95, 96, 4, 5, 6, 7, 81, 446, - 104, 6, 35, 36, 37, 28, 29, 661, 14, 15, - 20, 21, 17, 23, 197, 20, 3, 27, 207, 24, - 593, 86, 676, 404, 405, 406, 321, 322, 323, 86, - 40, 41, 42, 43, 86, 30, 31, 716, 89, 49, - 50, 15, 16, 53, 49, 48, 56, 726, 53, 87, - 535, 400, 401, 63, 64, 734, 51, 52, 241, 670, - 243, 71, 67, 68, 253, 60, 61, 86, 251, 87, - 65, 86, 600, 402, 403, 385, 386, 81, 88, 3, - 87, 8, 271, 104, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 86, 706, 104, 86, 86, 89, - 86, 25, 26, 86, 104, 87, 295, 86, 47, 87, - 86, 86, 89, 104, 87, 86, 86, 101, 87, 87, - 537, 310, 342, 87, 342, 342, 342, 87, 87, 87, - 3, 3, 93, 105, 90, 90, 3, 94, 92, 91, - 341, 342, 670, 341, 90, 87, 341, 90, 88, 86, - 341, 381, 341, 342, 341, 105, 103, 81, 381, 103, - 88, 102, 88, 88, 8, 103, 58, 103, 357, 103, - 88, 88, 88, 88, 88, 31, 86, 366, 706, 90, - 86, 86, 86, 86, 385, 386, 86, 385, 386, 86, + 2, 381, 324, 72, 72, 72, 72, 274, 275, 537, + 469, 366, 433, 309, 235, 283, 81, 3, 76, 3, + 3, 3, 1, 81, 75, 574, 294, 75, 0, 90, + 75, 75, 3, 72, 75, 1, 75, 19, 75, 104, + 3, 74, 103, 76, 77, 78, 79, 76, 344, 28, + 29, 84, 81, 602, 60, 88, 8, 9, 91, 65, + 3, 94, 28, 29, 86, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 296, 6, 345, 86, 6, + 49, 89, 25, 26, 53, 86, 82, 83, 89, 469, + 74, 75, 76, 77, 78, 79, 80, 81, 81, 81, + 84, 85, 22, 74, 75, 76, 77, 78, 79, 80, + 81, 95, 96, 84, 85, 28, 100, 101, 81, 49, + 628, 3, 88, 53, 28, 29, 8, 9, 10, 89, + 101, 13, 14, 15, 16, 643, 86, 358, 81, 86, + 599, 23, 89, 8, 86, 3, 11, 89, 86, 445, + 63, 659, 14, 15, 67, 95, 96, 104, 97, 98, + 99, 35, 36, 37, 197, 86, 674, 86, 207, 3, + 83, 592, 85, 3, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 714, 404, 405, 406, + 24, 25, 26, 86, 30, 31, 724, 15, 16, 81, + 321, 322, 323, 48, 732, 400, 401, 87, 241, 668, + 243, 533, 402, 403, 253, 51, 52, 6, 251, 599, + 385, 386, 89, 86, 60, 61, 87, 81, 17, 65, + 86, 20, 271, 104, 589, 24, 104, 592, 86, 89, + 87, 87, 86, 86, 86, 704, 86, 81, 86, 8, + 87, 86, 104, 86, 47, 87, 295, 86, 86, 3, + 49, 87, 101, 87, 53, 87, 87, 87, 535, 3, + 87, 310, 91, 342, 342, 342, 342, 89, 67, 68, + 105, 104, 90, 90, 93, 3, 92, 90, 668, 94, + 341, 342, 105, 341, 90, 87, 341, 88, 88, 103, + 341, 381, 341, 342, 341, 103, 86, 102, 381, 103, + 88, 88, 8, 58, 88, 103, 103, 88, 357, 88, + 88, 88, 86, 31, 704, 90, 86, 366, 86, 86, + 86, 86, 86, 86, 385, 386, 3, 385, 386, 86, 385, 386, 381, 86, 385, 386, 385, 386, 385, 386, - 1, 3, 3, 4, 689, 86, 7, 8, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 86, 23, 102, 25, 26, 27, 86, 86, 30, - 31, 32, 33, 34, 423, 424, 425, 426, 86, 40, - 470, 86, 88, 44, 86, 434, 86, 470, 86, 432, - 66, 88, 88, 54, 88, 438, 439, 90, 88, 3, - 101, 3, 63, 64, 3, 86, 8, 9, 10, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 87, 35, - 81, 470, 24, 25, 26, 718, 719, 88, 106, 86, - 449, 3, 449, 88, 449, 86, 86, 449, 449, 102, - 35, 101, 38, 3, 55, 90, 102, 59, 741, 102, - 102, 90, 101, 101, 62, 102, 86, 89, 39, 88, - 101, 86, 90, 89, 102, 508, 102, 510, 511, 102, - 101, 76, 515, 90, 16, 102, 3, 349, 76, 81, - 523, 8, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 15, 397, 399, 539, 546, 25, 26, - 639, 346, 398, 508, 72, 310, 72, 34, 276, 692, - 600, 610, 353, 694, 717, 3, 538, 600, 343, 733, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 343, 23, 24, 25, 26, 67, - 252, 463, 548, 366, 593, -1, 616, -1, 591, -1, - 343, 600, 343, 343, 81, -1, -1, -1, 601, 601, - -1, -1, 611, -1, -1, -1, -1, -1, -1, -1, - -1, 614, -1, -1, -1, -1, -1, -1, -1, -1, - 670, -1, -1, -1, -1, -1, -1, 670, -1, -1, - -1, -1, -1, 81, -1, -1, 639, 639, 86, -1, - -1, 89, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 706, -1, -1, -1, - -1, 670, -1, 706, -1, 674, -1, -1, -1, -1, - -1, -1, 693, -1, -1, 693, 679, 679, 693, 693, - -1, -1, 693, -1, 693, -1, 693, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 706, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 718, - 719, -1, -1, 716, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 726, -1, -1, -1, 1, -1, 3, - 4, 734, 741, 7, 8, 9, 10, 11, 12, 13, + 102, 1, 88, 86, 4, 5, 6, 7, 86, 86, + 86, 86, 86, 86, 66, 687, 88, 88, 88, 88, + 20, 21, 3, 23, 90, 86, 35, 27, 87, 3, + 3, 88, 86, 86, 423, 424, 425, 426, 101, 469, + 40, 41, 42, 43, 433, 101, 469, 35, 38, 49, + 50, 106, 102, 53, 437, 438, 56, 55, 90, 102, + 102, 102, 59, 63, 64, 90, 101, 101, 62, 102, + 86, 71, 90, 39, 89, 88, 86, 101, 89, 102, + 469, 102, 101, 716, 717, 448, 90, 76, 88, 448, + 102, 448, 76, 448, 102, 16, 448, 349, 15, 346, + 398, 397, 507, 310, 399, 638, 739, 72, 72, 353, + 276, 690, 692, 609, 536, 343, 715, 731, 343, 67, + 343, 343, 462, 252, 507, 546, 509, 510, 615, -1, + 513, 514, -1, -1, 3, -1, -1, -1, 521, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, -1, -1, -1, 537, 544, 25, 26, -1, -1, + -1, -1, -1, -1, -1, 34, -1, -1, -1, 599, + -1, -1, -1, -1, 3, -1, 599, -1, -1, 8, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, -1, 23, 24, 25, 26, -1, -1, + 589, -1, -1, 592, -1, -1, -1, -1, -1, -1, + 599, -1, 81, -1, -1, -1, -1, 600, 600, -1, + 3, 610, -1, -1, -1, 8, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, -1, 668, -1, + -1, -1, 25, 26, -1, 668, -1, -1, -1, -1, + -1, -1, 81, -1, -1, 638, 638, 86, -1, -1, + 89, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 704, -1, -1, -1, -1, 668, + -1, 704, -1, 672, -1, -1, -1, -1, -1, -1, + 691, -1, -1, 691, 677, 677, 691, 691, 81, -1, + 691, -1, 691, -1, 691, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 704, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 716, 717, -1, + -1, 714, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 724, -1, -1, -1, 1, -1, 3, 4, 732, + 739, 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, -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, 3, - 44, 45, 46, -1, 8, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, -1, -1, -1, 63, - 64, 25, 26, -1, -1, -1, -1, -1, -1, -1, + 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, -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, 81, 40, -1, - -1, -1, 44, 45, 46, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 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, @@ -1665,77 +1676,77 @@ static const tao_yytype_uint16 tao_yystos[] = 56, 63, 64, 71, 110, 125, 130, 131, 135, 137, 140, 141, 142, 146, 150, 152, 156, 157, 178, 179, 197, 206, 226, 228, 240, 242, 264, 265, 266, 307, - 358, 359, 360, 361, 362, 366, 388, 390, 413, 414, - 415, 416, 417, 421, 422, 423, 426, 430, 432, 436, - 450, 124, 180, 126, 136, 198, 227, 241, 267, 308, + 358, 359, 360, 361, 362, 366, 387, 389, 412, 413, + 414, 415, 416, 420, 421, 422, 425, 429, 431, 435, + 449, 124, 180, 126, 136, 198, 227, 241, 267, 308, 3, 177, 214, 135, 53, 135, 150, 152, 53, 142, - 152, 153, 177, 177, 391, 81, 174, 177, 174, 451, - 118, 116, 89, 104, 138, 437, 132, 119, 143, 8, + 152, 153, 177, 177, 390, 81, 174, 177, 174, 450, + 118, 116, 89, 104, 138, 436, 132, 119, 143, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 24, 25, 26, 138, 174, 201, 202, 203, 204, 205, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 228, 240, 242, 266, 275, 278, 281, 284, 285, 288, 114, 111, 229, 22, 115, 112, 113, 120, - 363, 121, 389, 122, 138, 424, 424, 117, 433, 123, + 363, 121, 388, 122, 138, 423, 423, 117, 432, 123, 86, 174, 184, 216, 219, 220, 221, 222, 223, 281, 285, 3, 177, 199, 201, 177, 177, 177, 177, 138, 177, 138, 147, 177, 177, 367, 177, 175, 76, 81, - 76, 3, 86, 86, 48, 154, 438, 89, 443, 87, + 76, 3, 86, 86, 48, 154, 437, 89, 442, 87, 86, 87, 8, 11, 8, 9, 279, 151, 90, 103, 104, 104, 86, 86, 87, 243, 86, 86, 86, 86, - 87, 86, 87, 400, 86, 425, 418, 427, 86, 87, - 86, 181, 127, 200, 268, 309, 87, 89, 369, 392, - 177, 176, 452, 139, 6, 17, 20, 24, 49, 53, - 67, 68, 431, 442, 174, 444, 446, 133, 144, 8, - 104, 47, 155, 276, 282, 286, 230, 101, 364, 401, - 155, 87, 87, 434, 177, 87, 177, 207, 210, 214, - 215, 289, 87, 87, 148, 370, 368, 89, 397, 177, - 437, 456, 171, 174, 3, 440, 104, 445, 161, 158, + 87, 86, 87, 399, 86, 424, 417, 426, 86, 87, + 86, 181, 127, 200, 268, 309, 87, 89, 369, 391, + 177, 176, 451, 139, 6, 17, 20, 24, 49, 53, + 67, 68, 430, 441, 174, 443, 445, 133, 144, 8, + 104, 47, 155, 276, 282, 286, 230, 101, 364, 400, + 155, 87, 87, 433, 177, 87, 177, 207, 210, 214, + 215, 289, 87, 87, 148, 370, 368, 89, 396, 177, + 436, 455, 171, 174, 3, 439, 104, 444, 161, 158, 280, 171, 74, 75, 76, 77, 78, 79, 80, 84, 85, 95, 96, 100, 101, 174, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 196, 196, 232, - 234, 235, 244, 371, 403, 419, 428, 161, 182, 128, - 290, 208, 269, 310, 161, 174, 155, 398, 393, 453, - 172, 90, 439, 3, 447, 449, 90, 1, 30, 31, + 234, 235, 244, 371, 402, 418, 427, 161, 182, 128, + 290, 208, 269, 310, 161, 174, 155, 397, 392, 452, + 172, 90, 438, 3, 446, 448, 90, 1, 30, 31, 32, 33, 134, 162, 179, 197, 296, 297, 302, 307, 312, 317, 358, 359, 44, 45, 46, 145, 159, 160, 162, 319, 202, 194, 194, 194, 186, 92, 93, 94, 82, 83, 95, 96, 97, 98, 99, 277, 283, 287, 231, 233, 1, 201, 236, 8, 174, 216, 221, 222, 223, 249, 266, 51, 52, 60, 61, 65, 296, 365, - 372, 379, 380, 382, 383, 385, 386, 387, 44, 54, - 162, 402, 404, 407, 410, 161, 158, 435, 91, 109, - 105, 291, 293, 90, 3, 271, 274, 233, 149, 174, - 155, 87, 90, 441, 103, 103, 448, 446, 170, 298, - 303, 88, 166, 163, 168, 167, 169, 34, 174, 203, - 281, 285, 318, 341, 164, 165, 320, 236, 236, 88, - 86, 102, 188, 189, 190, 191, 191, 192, 192, 193, - 193, 193, 103, 103, 103, 88, 234, 239, 237, 245, - 174, 174, 19, 174, 381, 174, 58, 384, 378, 88, - 373, 177, 374, 381, 375, 376, 377, 177, 177, 88, - 405, 406, 420, 429, 88, 183, 129, 294, 292, 209, - 270, 272, 311, 88, 394, 454, 173, 442, 90, 86, - 31, 341, 86, 86, 86, 86, 86, 313, 86, 86, - 3, 86, 207, 102, 177, 177, 177, 86, 86, 86, - 177, 86, 86, 86, 408, 411, 86, 86, 88, 88, - 185, 186, 88, 196, 293, 210, 88, 90, 88, 66, - 379, 380, 382, 383, 457, 459, 462, 463, 174, 449, - 299, 304, 3, 321, 238, 246, 101, 323, 323, 295, - 273, 395, 3, 447, 381, 455, 458, 460, 461, 341, - 211, 214, 314, 323, 86, 87, 324, 325, 409, 412, - 106, 274, 174, 3, 447, 88, 459, 86, 86, 300, - 305, 212, 101, 332, 322, 247, 102, 35, 326, 329, - 38, 343, 343, 396, 3, 211, 55, 346, 90, 333, - 334, 315, 343, 1, 28, 29, 250, 252, 256, 258, - 330, 102, 327, 344, 59, 399, 301, 347, 306, 213, - 102, 35, 36, 37, 335, 338, 342, 343, 255, 260, - 259, 248, 251, 253, 257, 341, 90, 101, 174, 343, - 101, 62, 349, 214, 102, 336, 339, 316, 86, 186, - 89, 88, 252, 201, 262, 258, 331, 328, 345, 348, - 350, 90, 341, 39, 352, 261, 263, 254, 210, 329, - 171, 171, 101, 337, 340, 353, 89, 210, 86, 102, - 102, 351, 338, 210, 101, 171, 354, 102, 76, 355, - 356, 102, 90, 357, 76 + 372, 379, 381, 382, 384, 385, 386, 44, 54, 162, + 401, 403, 406, 409, 161, 158, 434, 91, 109, 105, + 291, 293, 90, 3, 271, 274, 233, 149, 174, 155, + 87, 90, 440, 103, 103, 447, 445, 170, 298, 303, + 88, 166, 163, 168, 167, 169, 34, 174, 203, 281, + 285, 318, 341, 164, 165, 320, 236, 236, 88, 86, + 102, 188, 189, 190, 191, 191, 192, 192, 193, 193, + 193, 103, 103, 103, 88, 234, 239, 237, 245, 174, + 174, 19, 174, 380, 174, 58, 383, 378, 88, 373, + 374, 380, 375, 376, 377, 177, 177, 88, 404, 405, + 419, 428, 88, 183, 129, 294, 292, 209, 270, 272, + 311, 88, 393, 453, 173, 441, 90, 86, 31, 341, + 86, 86, 86, 86, 86, 313, 86, 86, 3, 86, + 207, 102, 177, 177, 177, 177, 86, 86, 86, 177, + 86, 86, 86, 407, 410, 86, 86, 88, 88, 185, + 186, 88, 196, 293, 210, 88, 90, 88, 66, 60, + 379, 381, 382, 456, 458, 461, 462, 174, 448, 299, + 304, 3, 321, 238, 246, 101, 323, 323, 295, 273, + 394, 174, 445, 445, 454, 457, 459, 460, 341, 211, + 214, 314, 323, 86, 87, 324, 325, 408, 411, 106, + 274, 174, 3, 3, 88, 458, 86, 86, 300, 305, + 212, 101, 332, 322, 247, 102, 35, 326, 329, 38, + 343, 343, 395, 211, 55, 346, 90, 333, 334, 315, + 343, 1, 28, 29, 250, 252, 256, 258, 330, 102, + 327, 344, 59, 398, 301, 347, 306, 213, 102, 35, + 36, 37, 335, 338, 342, 343, 255, 260, 259, 248, + 251, 253, 257, 341, 90, 101, 174, 343, 101, 62, + 349, 214, 102, 336, 339, 316, 86, 186, 89, 88, + 252, 201, 262, 258, 331, 328, 345, 348, 350, 90, + 341, 39, 352, 261, 263, 254, 210, 329, 171, 171, + 101, 337, 340, 353, 89, 210, 86, 102, 102, 351, + 338, 210, 101, 171, 354, 102, 76, 355, 356, 102, + 90, 357, 76 }; #define tao_yyerrok (tao_yyerrstatus = 0) @@ -7505,25 +7516,25 @@ tao_yyreduce: case 419: { -// provides_decl : provides_type id +// provides_decl : IDL_PROVIDES interface_type id UTL_Scope *s = idl_global->scopes ().top_non_null (); AST_Component *c = AST_Component::narrow_from_scope (s); if (c != 0) { - AST_Decl *d = s->lookup_by_name ((tao_yyvsp[(1) - (2)].idlist), + AST_Decl *d = s->lookup_by_name ((tao_yyvsp[(2) - (3)].idlist), true); if (0 == d) { - idl_global->err ()->lookup_error ((tao_yyvsp[(1) - (2)].idlist)); + idl_global->err ()->lookup_error ((tao_yyvsp[(2) - (3)].idlist)); - (tao_yyvsp[(1) - (2)].idlist)->destroy (); - delete (tao_yyvsp[(1) - (2)].idlist); - (tao_yyvsp[(1) - (2)].idlist) = 0; + (tao_yyvsp[(2) - (3)].idlist)->destroy (); + delete (tao_yyvsp[(2) - (3)].idlist); + (tao_yyvsp[(2) - (3)].idlist) = 0; - (tao_yyvsp[(2) - (2)].idval)->destroy (); - delete (tao_yyvsp[(2) - (2)].idval); - (tao_yyvsp[(2) - (2)].idval) = 0; + (tao_yyvsp[(3) - (3)].idval)->destroy (); + delete (tao_yyvsp[(3) - (3)].idval); + (tao_yyvsp[(3) - (3)].idval) = 0; break; } @@ -7537,13 +7548,13 @@ tao_yyreduce: { idl_global->err ()->interface_expected (d); - (tao_yyvsp[(1) - (2)].idlist)->destroy (); - delete (tao_yyvsp[(1) - (2)].idlist); - (tao_yyvsp[(1) - (2)].idlist) = 0; + (tao_yyvsp[(2) - (3)].idlist)->destroy (); + delete (tao_yyvsp[(2) - (3)].idlist); + (tao_yyvsp[(2) - (3)].idlist) = 0; - (tao_yyvsp[(2) - (2)].idval)->destroy (); - delete (tao_yyvsp[(2) - (2)].idval); - (tao_yyvsp[(2) - (2)].idval) = 0; + (tao_yyvsp[(3) - (3)].idval)->destroy (); + delete (tao_yyvsp[(3) - (3)].idval); + (tao_yyvsp[(3) - (3)].idval) = 0; break; } @@ -7555,33 +7566,23 @@ tao_yyreduce: AST_Component::port_description pd; // Strip off _cxx_, if any, for port name. - idl_global->original_local_name ((tao_yyvsp[(2) - (2)].idval)); + idl_global->original_local_name ((tao_yyvsp[(3) - (3)].idval)); - pd.id = (tao_yyvsp[(2) - (2)].idval); + pd.id = (tao_yyvsp[(3) - (3)].idval); pd.impl = interface_type; pd.line_number = idl_global->lineno (); c->provides ().enqueue_tail (pd); } - (tao_yyvsp[(1) - (2)].idlist)->destroy (); - delete (tao_yyvsp[(1) - (2)].idlist); - (tao_yyvsp[(1) - (2)].idlist) = 0; + (tao_yyvsp[(2) - (3)].idlist)->destroy (); + delete (tao_yyvsp[(2) - (3)].idlist); + (tao_yyvsp[(2) - (3)].idlist) = 0; } break; case 420: { -// provides_type : IDL_PROVIDES interface_type - // We use this extra rule here to use in both provides_decl and - // extended_provides_decl, so the LALR(1) parser can avoid conflicts. - (tao_yyval.idlist) = (tao_yyvsp[(2) - (2)].idlist); - } - break; - - case 421: - - { // interface_type : scoped_name // Lookups and checking are done where the 'interface_type' // token is used, in 'provides_decl' and 'uses_decl'. @@ -7589,7 +7590,7 @@ tao_yyreduce: } break; - case 422: + case 421: { // | IDL_OBJECT @@ -7614,7 +7615,7 @@ tao_yyreduce: } break; - case 423: + case 422: { // uses_decl : uses_opt_multiple interface_type id @@ -7689,7 +7690,7 @@ tao_yyreduce: } break; - case 424: + case 423: { // uses_opt_multiple : IDL_USES opt_multiple @@ -7699,7 +7700,7 @@ tao_yyreduce: } break; - case 425: + case 424: { // opt_multiple : IDL_MULTIPLE @@ -7707,7 +7708,7 @@ tao_yyreduce: } break; - case 426: + case 425: { /* | EMPTY */ @@ -7715,7 +7716,7 @@ tao_yyreduce: } break; - case 427: + case 426: { // emits_decl : IDL_EMITS scoped_name id @@ -7776,7 +7777,7 @@ tao_yyreduce: } break; - case 428: + case 427: { // publishes_decl : IDL_PUBLISHES scoped_name id @@ -7837,7 +7838,7 @@ tao_yyreduce: } break; - case 429: + case 428: { // consumes_decl : IDL_CONSUMES scoped_name id @@ -7898,7 +7899,7 @@ tao_yyreduce: } break; - case 430: + case 429: { // home_decl : home_header @@ -7939,7 +7940,7 @@ tao_yyreduce: } break; - case 431: + case 430: { // home_body @@ -7950,7 +7951,7 @@ tao_yyreduce: } break; - case 432: + case 431: { // home_header : IDL_HOME @@ -7958,7 +7959,7 @@ tao_yyreduce: } break; - case 433: + case 432: { // id @@ -7966,7 +7967,7 @@ tao_yyreduce: } break; - case 434: + case 433: { // home_inheritance_spec @@ -7974,7 +7975,7 @@ tao_yyreduce: } break; - case 435: + case 434: { // supports_spec @@ -7982,7 +7983,7 @@ tao_yyreduce: } break; - case 436: + case 435: { // IDL_MANAGES @@ -7990,7 +7991,7 @@ tao_yyreduce: } break; - case 437: + case 436: { // scoped_name @@ -7998,7 +7999,7 @@ tao_yyreduce: } break; - case 438: + case 437: { // primary_key_spec @@ -8047,7 +8048,7 @@ tao_yyreduce: } break; - case 439: + case 438: { // home_inheritance_spec ':' @@ -8055,7 +8056,7 @@ tao_yyreduce: } break; - case 440: + case 439: { // scoped_name @@ -8063,7 +8064,7 @@ tao_yyreduce: } break; - case 441: + case 440: { /* | EMPTY */ @@ -8071,7 +8072,7 @@ tao_yyreduce: } break; - case 442: + case 441: { // primary_key_spec : IDL_PRIMARYKEY scoped_name @@ -8079,7 +8080,7 @@ tao_yyreduce: } break; - case 443: + case 442: { /* | EMPTY */ @@ -8087,7 +8088,7 @@ tao_yyreduce: } break; - case 444: + case 443: { // home_body : '{' @@ -8095,7 +8096,7 @@ tao_yyreduce: } break; - case 445: + case 444: { // home_exports @@ -8103,7 +8104,7 @@ tao_yyreduce: } break; - case 446: + case 445: { // '}' @@ -8111,7 +8112,7 @@ tao_yyreduce: } break; - case 450: + case 449: { // home_export : factory_decl @@ -8119,7 +8120,7 @@ tao_yyreduce: } break; - case 451: + case 450: { // | ';' @@ -8127,7 +8128,7 @@ tao_yyreduce: } break; - case 452: + case 451: { // | finder_decl @@ -8135,7 +8136,7 @@ tao_yyreduce: } break; - case 453: + case 452: { // | ';' @@ -8143,7 +8144,7 @@ tao_yyreduce: } break; - case 454: + case 453: { // factory_decl : IDL_FACTORY id @@ -8182,7 +8183,7 @@ tao_yyreduce: } break; - case 455: + case 454: { // init_parameter_list @@ -8190,7 +8191,7 @@ tao_yyreduce: } break; - case 456: + case 455: { // opt_raises @@ -8218,7 +8219,7 @@ tao_yyreduce: } break; - case 457: + case 456: { // finder_decl : IDL_FINDER id @@ -8257,7 +8258,7 @@ tao_yyreduce: } break; - case 458: + case 457: { // init_parameter_list @@ -8265,7 +8266,7 @@ tao_yyreduce: } break; - case 459: + case 458: { // opt_raises @@ -8293,7 +8294,7 @@ tao_yyreduce: } break; - case 465: + case 464: { // event_concrete_forward_decl : IDL_EVENTTYPE id @@ -8320,7 +8321,7 @@ tao_yyreduce: } break; - case 466: + case 465: { // event_abs_forward_decl : IDL_ABSTRACT IDL_EVENTTYPE id @@ -8347,7 +8348,7 @@ tao_yyreduce: } break; - case 467: + case 466: { // event_abs_decl : event_abs_header event_rest_of_header @@ -8395,7 +8396,7 @@ tao_yyreduce: } break; - case 468: + case 467: { // '{' @@ -8403,7 +8404,7 @@ tao_yyreduce: } break; - case 469: + case 468: { // exports @@ -8411,7 +8412,7 @@ tao_yyreduce: } break; - case 470: + case 469: { // '}' @@ -8424,7 +8425,7 @@ tao_yyreduce: } break; - case 471: + case 470: { // event_abs_header : IDL_ABSTRACT IDL_EVENTTYPE id @@ -8432,7 +8433,7 @@ tao_yyreduce: } break; - case 472: + case 471: { // event_custom_header : IDL_CUSTOM IDL_EVENTTYPE id @@ -8449,7 +8450,7 @@ tao_yyreduce: } break; - case 473: + case 472: { // event_plain_header : IDL_EVENTTYPE id @@ -8459,7 +8460,7 @@ tao_yyreduce: } break; - case 474: + case 473: { // event_rest_of_header : inheritance_spec @@ -8467,7 +8468,7 @@ tao_yyreduce: } break; - case 475: + case 474: { // supports_spec @@ -8500,7 +8501,7 @@ tao_yyreduce: } break; - case 476: + case 475: { // event_decl : event_header event_rest_of_header @@ -8553,7 +8554,7 @@ tao_yyreduce: } break; - case 477: + case 476: { // '{' @@ -8561,7 +8562,7 @@ tao_yyreduce: } break; - case 478: + case 477: { // value_elements @@ -8569,7 +8570,7 @@ tao_yyreduce: } break; - case 479: + case 478: { // '}' @@ -8582,7 +8583,7 @@ tao_yyreduce: } break; - case 480: + case 479: { // event_header : event_custom_header @@ -8590,7 +8591,7 @@ tao_yyreduce: } break; - case 481: + case 480: { // event_header : event_plain_header @@ -8598,7 +8599,7 @@ tao_yyreduce: } break; - case 482: + case 481: { // type_classifier : IDL_TYPENAME @@ -8606,7 +8607,7 @@ tao_yyreduce: } break; - case 483: + case 482: { // IDL_STRUCT @@ -8614,7 +8615,7 @@ tao_yyreduce: } break; - case 484: + case 483: { // IDL_EVENTTYPE @@ -8622,7 +8623,7 @@ tao_yyreduce: } break; - case 485: + case 484: { // IDL_PRIMITIVE @@ -8630,7 +8631,7 @@ tao_yyreduce: } break; - case 486: + case 485: { // IDL_FIXED @@ -8646,7 +8647,7 @@ tao_yyreduce: } break; - case 487: + case 486: { // IDL_SEQUENCE @@ -8654,7 +8655,7 @@ tao_yyreduce: } break; - case 488: + case 487: { // IDL_INTERFACE @@ -8662,7 +8663,7 @@ tao_yyreduce: } break; - case 489: + case 488: { // IDL_VALUETYPE @@ -8670,7 +8671,7 @@ tao_yyreduce: } break; - case 490: + case 489: { // template_interface_def : template_interface_header @@ -8695,7 +8696,7 @@ tao_yyreduce: } break; - case 491: + case 490: { // '{' @@ -8703,7 +8704,7 @@ tao_yyreduce: } break; - case 492: + case 491: { // exports - TODO: change to include concatenated identifiers @@ -8711,7 +8712,7 @@ tao_yyreduce: } break; - case 493: + case 492: { // '}' @@ -8724,7 +8725,7 @@ tao_yyreduce: } break; - case 494: + case 493: { // template_interface_header : interface_decl at_least_one_template_param template_inheritance_spec @@ -8741,7 +8742,7 @@ tao_yyreduce: } break; - case 495: + case 494: { // at_least_one_template_param : '<' @@ -8749,7 +8750,7 @@ tao_yyreduce: } break; - case 496: + case 495: { // template_param template_params @@ -8766,7 +8767,7 @@ tao_yyreduce: } break; - case 497: + case 496: { // '>' @@ -8775,7 +8776,7 @@ tao_yyreduce: } break; - case 498: + case 497: { // template_params : template_params ',' @@ -8783,7 +8784,7 @@ tao_yyreduce: } break; - case 499: + case 498: { // template_param @@ -8802,7 +8803,7 @@ tao_yyreduce: } break; - case 500: + case 499: { // /* EMPTY */ @@ -8810,7 +8811,7 @@ tao_yyreduce: } break; - case 501: + case 500: { // template_param : type_classifier IDENTIFIER @@ -8824,7 +8825,7 @@ tao_yyreduce: } break; - case 502: + case 501: { // template_inheritance_spec : ':' at_least_one_template_ref @@ -8832,7 +8833,7 @@ tao_yyreduce: } break; - case 503: + case 502: { // /* EMPTY */ @@ -8840,7 +8841,7 @@ tao_yyreduce: } break; - case 504: + case 503: { // at_least_one_template_ref : template_ref template_refs @@ -8859,7 +8860,7 @@ tao_yyreduce: } break; - case 505: + case 504: { // template_refs : template_refs ',' template_ref @@ -8878,7 +8879,7 @@ tao_yyreduce: } break; - case 506: + case 505: { // /* EMPTY */ @@ -8886,7 +8887,7 @@ tao_yyreduce: } break; - case 507: + case 506: { // template_ref : scoped_name '<' at_least_one_template_param_ref '>' @@ -8896,7 +8897,7 @@ tao_yyreduce: } break; - case 508: + case 507: { // at_least_one_template_param_ref : template_param_ref template_param_refs @@ -8907,7 +8908,7 @@ tao_yyreduce: } break; - case 509: + case 508: { // template_param_refs : template_param_refs ',' template_param_ref @@ -8933,7 +8934,7 @@ tao_yyreduce: } break; - case 510: + case 509: { // /* EMPTY */ @@ -8941,7 +8942,7 @@ tao_yyreduce: } break; - case 511: + case 510: { // template_param_ref : IDENTIFIER @@ -8951,7 +8952,7 @@ tao_yyreduce: } break; - case 512: + case 511: { // porttype_decl : IDL_PORTTYPE @@ -8959,7 +8960,7 @@ tao_yyreduce: } break; - case 513: + case 512: { // IDENTIFIER @@ -8967,14 +8968,14 @@ tao_yyreduce: } break; - case 514: + case 513: { // opt_template_params } break; - case 515: + case 514: { // '{' @@ -8982,7 +8983,7 @@ tao_yyreduce: } break; - case 516: + case 515: { // at_least_one_port_export @@ -8990,7 +8991,7 @@ tao_yyreduce: } break; - case 517: + case 516: { // '}' @@ -8998,70 +8999,70 @@ tao_yyreduce: } break; - case 518: + case 517: { // opt_template_params : at_least_one_template_param } break; - case 519: + case 518: { // | /* EMPTY */ } break; - case 520: + case 519: { // at_least_one_port_export : port_export port_exports } break; - case 521: + case 520: { // port_exports : port_exports port_export } break; - case 522: + case 521: { // | /* EMPTY */ } break; - case 523: + case 522: { // port_export : extended_provides_decl } break; - case 524: + case 523: { // ';' } break; - case 525: + case 524: { // | extended_uses_decl } break; - case 526: + case 525: { // ';' } break; - case 527: + case 526: { // extended_provides_decl : provides_decl @@ -9069,7 +9070,7 @@ tao_yyreduce: } break; - case 528: + case 527: { // | provides_type at_least_one_template_param_ref IDENTIFIER @@ -9082,7 +9083,7 @@ tao_yyreduce: } break; - case 529: + case 528: { // extended_uses_decl : uses_decl @@ -9090,10 +9091,10 @@ tao_yyreduce: } break; - case 530: + case 529: { -// | uses_opt_multiple interface_type at_least_one_template_param_ref IDENTIFIER +// | uses_opt_multiple template_ref IDENTIFIER idl_global->set_parse_state (IDL_GlobalData::PS_ExtUsesDeclSeen); |