summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-11-24 21:21:46 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2009-11-24 21:21:46 +0000
commit5d72c19b9c635d2a9175940e07128c3c6a6845fd (patch)
tree49969adfd5044c24ac53cc6a4bf7b8ed877b247f
parentee967902987e53ac432ef774a52079fd7af392af (diff)
downloadATCD-5d72c19b9c635d2a9175940e07128c3c6a6845fd.tar.gz
ChangeLogTag: Tue Nov 24 21:20:55 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--modules/TAO/ChangeLog9
-rw-r--r--modules/TAO/TAO_IDL/fe/idl.yy12
-rw-r--r--modules/TAO/TAO_IDL/fe/y.tab.cpp174
3 files changed, 116 insertions, 79 deletions
diff --git a/modules/TAO/ChangeLog b/modules/TAO/ChangeLog
index 5e0093c6a9a..b7523fb5e3d 100644
--- a/modules/TAO/ChangeLog
+++ b/modules/TAO/ChangeLog
@@ -1,3 +1,10 @@
+Tue Nov 24 21:20:55 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
+
+ * TAO_IDL/fe/idl.yy:
+ * TAO_IDL/fe/y.tab.cpp:
+
+ Regenerated parsing code and recompiled.
+
Tue Nov 24 20:54:20 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
* TAO_IDL/include/idl_global.h:
@@ -6,7 +13,7 @@ Tue Nov 24 20:54:20 UTC 2009 Jeff Parsons <j.parsons@vanderbilt.edu>
* TAO_IDL/fe/idl.yy:
* TAO_IDL/util/utl_err.cpp:
* TAO_IDL/util/utl_global.cpp:
-
+
- Added check for mismatched 'sequence<xxx>' template param
- Updated parse state values
- Updated semantic action that creates a fixed module
diff --git a/modules/TAO/TAO_IDL/fe/idl.yy b/modules/TAO/TAO_IDL/fe/idl.yy
index f5068f501cf..685a1ee11a3 100644
--- a/modules/TAO/TAO_IDL/fe/idl.yy
+++ b/modules/TAO/TAO_IDL/fe/idl.yy
@@ -78,7 +78,9 @@ trademarks or registered trademarks of Sun Microsystems, Inc.
#include "ast_expression.h"
#include "ast_operation.h"
#include "ast_generator.h"
-#include "ast_module.h"
+#include "ast_template_module.h"
+#include "ast_template_module_inst.h"
+#include "ast_template_module_ref.h"
#include "ast_valuebox.h"
#include "ast_valuetype.h"
#include "ast_valuetype_fwd.h"
@@ -599,13 +601,13 @@ template_module
{
// '>'
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleParamsSeen);
-
+
AST_Template_Module *tm =
idl_global->gen ()->create_template_module ($1,
$3);
-
+
UTL_Scope *s = idl_global->scopes ().top_non_null ();
- $1);
+
(void) s->fe_add_module (tm);
/*
@@ -624,7 +626,7 @@ template_module
'}'
{
idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleQsSeen);
-
+
/*
* Finished with this module - pop it from the scope stack.
*/
diff --git a/modules/TAO/TAO_IDL/fe/y.tab.cpp b/modules/TAO/TAO_IDL/fe/y.tab.cpp
index db685305acf..bc328aa79c8 100644
--- a/modules/TAO/TAO_IDL/fe/y.tab.cpp
+++ b/modules/TAO/TAO_IDL/fe/y.tab.cpp
@@ -248,7 +248,9 @@
#include "ast_expression.h"
#include "ast_operation.h"
#include "ast_generator.h"
-#include "ast_module.h"
+#include "ast_template_module.h"
+#include "ast_template_module_inst.h"
+#include "ast_template_module_ref.h"
#include "ast_valuebox.h"
#include "ast_valuetype.h"
#include "ast_valuetype_fwd.h"
@@ -871,63 +873,63 @@ static const tao_yytype_int16 tao_yyrhs[] =
/* TAO_YYRLINE[TAO_YYN] -- source line where rule number TAO_YYN was defined. */
static const tao_yytype_uint16 tao_yyrline[] =
{
- 0, 352, 352, 355, 356, 360, 363, 366, 372, 376,
- 377, 382, 381, 392, 391, 402, 401, 412, 411, 422,
- 421, 432, 431, 442, 441, 452, 451, 462, 461, 472,
- 471, 482, 481, 492, 491, 502, 501, 512, 511, 526,
- 525, 557, 562, 567, 556, 583, 588, 593, 596, 602,
- 605, 587, 613, 617, 618, 622, 623, 628, 631, 634,
- 627, 643, 646, 642, 654, 655, 660, 699, 704, 659,
- 722, 721, 735, 773, 804, 838, 837, 849, 856, 857,
- 858, 859, 863, 874, 879, 923, 928, 878, 957, 996,
- 1001, 955, 1020, 1018, 1058, 1057, 1071, 1077, 1084, 1091,
- 1098, 1124, 1151, 1216, 1217, 1221, 1222, 1223, 1229, 1228,
- 1236, 1235, 1245, 1246, 1251, 1250, 1261, 1260, 1271, 1270,
- 1281, 1280, 1291, 1290, 1301, 1300, 1311, 1310, 1321, 1320,
- 1334, 1347, 1345, 1375, 1382, 1393, 1392, 1420, 1418, 1445,
- 1457, 1503, 1531, 1562, 1567, 1572, 1577, 1561, 1630, 1631,
- 1632, 1633, 1634, 1635, 1636, 1648, 1653, 1728, 1730, 1732,
- 1733, 1747, 1748, 1762, 1763, 1776, 1777, 1787, 1800, 1801,
- 1811, 1824, 1825, 1835, 1845, 1858, 1859, 1869, 1879, 1892,
- 1927, 1928, 1937, 1942, 1949, 1957, 1962, 1967, 1973, 1978,
- 1983, 1991, 2063, 2062, 2072, 2077, 2082, 2087, 2114, 2123,
- 2122, 2193, 2194, 2198, 2206, 2207, 2235, 2236, 2237, 2238,
- 2239, 2240, 2241, 2242, 2246, 2247, 2248, 2252, 2253, 2254,
- 2258, 2259, 2263, 2276, 2274, 2304, 2311, 2312, 2316, 2329,
- 2327, 2357, 2364, 2381, 2400, 2401, 2405, 2410, 2415, 2423,
- 2428, 2433, 2441, 2446, 2451, 2459, 2473, 2478, 2486, 2494,
- 2502, 2510, 2519, 2518, 2534, 2568, 2573, 2533, 2592, 2595,
- 2596, 2600, 2600, 2610, 2615, 2609, 2678, 2677, 2692, 2691,
- 2706, 2711, 2716, 2721, 2768, 2773, 2705, 2797, 2805, 2819,
- 2829, 2837, 2838, 2946, 2949, 2950, 2955, 2960, 2954, 2996,
- 2995, 3009, 3020, 3042, 3050, 3049, 3065, 3070, 3064, 3087,
- 3086, 3139, 3163, 3188, 3193, 3226, 3231, 3187, 3257, 3262,
- 3260, 3267, 3271, 3308, 3313, 3306, 3380, 3435, 3445, 3434,
- 3460, 3465, 3458, 3506, 3532, 3542, 3547, 3540, 3577, 3602,
- 3611, 3610, 3646, 3657, 3679, 3687, 3692, 3686, 3729, 3730,
- 3735, 3740, 3745, 3750, 3734, 3819, 3824, 3829, 3834, 3818,
- 3912, 3917, 3947, 3952, 3911, 3970, 3975, 4028, 4033, 3968,
- 4070, 4076, 4083, 4090, 4091, 4103, 4109, 4151, 4102, 4173,
- 4172, 4183, 4182, 4195, 4200, 4198, 4205, 4210, 4215, 4209,
- 4256, 4255, 4266, 4265, 4278, 4283, 4281, 4288, 4293, 4298,
- 4292, 4345, 4353, 4354, 4355, 4460, 4465, 4470, 4479, 4484,
- 4478, 4496, 4504, 4509, 4503, 4521, 4529, 4534, 4528, 4546,
- 4554, 4559, 4553, 4571, 4578, 4591, 4589, 4617, 4624, 4653,
- 4691, 4692, 4696, 4726, 4766, 4771, 4725, 4790, 4795, 4788,
- 4837, 4836, 4847, 4854, 4855, 4860, 4859, 4870, 4869, 4880,
- 4879, 4890, 4889, 4900, 4899, 4910, 4909, 4920, 4919, 4931,
- 4990, 4997, 5021, 5095, 5105, 5111, 5117, 5164, 5211, 5260,
- 5259, 5309, 5314, 5319, 5324, 5329, 5334, 5308, 5388, 5387,
- 5398, 5405, 5412, 5420, 5425, 5419, 5437, 5438, 5442, 5444,
- 5443, 5454, 5453, 5468, 5504, 5466, 5538, 5574, 5536, 5606,
- 5607, 5608, 5612, 5613, 5617, 5645, 5676, 5721, 5726, 5674,
- 5743, 5753, 5772, 5784, 5783, 5823, 5873, 5878, 5821, 5895,
- 5900, 5908, 5913, 5918, 5923, 5928, 5933, 5938, 5943, 5948,
- 5956, 5974, 5973, 6017, 6024, 6035, 6049, 6056, 6080, 6087,
- 6098, 6103, 6108, 6113, 6097, 6128, 6135, 6140, 6147, 6146,
- 6155, 6154, 6165, 6234, 6284, 6288, 6289, 6293, 6307, 6312,
- 6317, 6311, 6377, 6382, 6376, 6397, 6401, 6402, 6407, 6406,
- 6417, 6416, 6427, 6426, 6437, 6436
+ 0, 355, 355, 358, 359, 363, 366, 369, 375, 379,
+ 380, 385, 384, 395, 394, 405, 404, 415, 414, 425,
+ 424, 435, 434, 445, 444, 455, 454, 465, 464, 475,
+ 474, 485, 484, 495, 494, 505, 504, 515, 514, 529,
+ 528, 541, 564, 569, 540, 585, 593, 598, 601, 619,
+ 623, 592, 638, 642, 643, 647, 648, 653, 656, 659,
+ 652, 668, 671, 667, 679, 680, 685, 724, 729, 684,
+ 747, 746, 760, 798, 829, 863, 862, 874, 881, 882,
+ 883, 884, 888, 899, 904, 948, 953, 903, 982, 1021,
+ 1026, 980, 1045, 1043, 1083, 1082, 1096, 1102, 1109, 1116,
+ 1123, 1149, 1176, 1241, 1242, 1246, 1247, 1248, 1254, 1253,
+ 1261, 1260, 1270, 1271, 1276, 1275, 1286, 1285, 1296, 1295,
+ 1306, 1305, 1316, 1315, 1326, 1325, 1336, 1335, 1346, 1345,
+ 1359, 1372, 1370, 1400, 1407, 1418, 1417, 1445, 1443, 1470,
+ 1482, 1528, 1556, 1587, 1592, 1597, 1602, 1586, 1655, 1656,
+ 1657, 1658, 1659, 1660, 1661, 1673, 1678, 1753, 1755, 1757,
+ 1758, 1772, 1773, 1787, 1788, 1801, 1802, 1812, 1825, 1826,
+ 1836, 1849, 1850, 1860, 1870, 1883, 1884, 1894, 1904, 1917,
+ 1952, 1953, 1962, 1967, 1974, 1982, 1987, 1992, 1998, 2003,
+ 2008, 2016, 2088, 2087, 2097, 2102, 2107, 2112, 2139, 2148,
+ 2147, 2218, 2219, 2223, 2231, 2232, 2260, 2261, 2262, 2263,
+ 2264, 2265, 2266, 2267, 2271, 2272, 2273, 2277, 2278, 2279,
+ 2283, 2284, 2288, 2301, 2299, 2329, 2336, 2337, 2341, 2354,
+ 2352, 2382, 2389, 2406, 2425, 2426, 2430, 2435, 2440, 2448,
+ 2453, 2458, 2466, 2471, 2476, 2484, 2498, 2503, 2511, 2519,
+ 2527, 2535, 2544, 2543, 2559, 2593, 2598, 2558, 2617, 2620,
+ 2621, 2625, 2625, 2635, 2640, 2634, 2703, 2702, 2717, 2716,
+ 2731, 2736, 2741, 2746, 2793, 2798, 2730, 2822, 2830, 2844,
+ 2854, 2862, 2863, 2971, 2974, 2975, 2980, 2985, 2979, 3021,
+ 3020, 3034, 3045, 3067, 3075, 3074, 3090, 3095, 3089, 3112,
+ 3111, 3164, 3188, 3213, 3218, 3251, 3256, 3212, 3282, 3287,
+ 3285, 3292, 3296, 3333, 3338, 3331, 3405, 3460, 3470, 3459,
+ 3485, 3490, 3483, 3531, 3557, 3567, 3572, 3565, 3602, 3627,
+ 3636, 3635, 3671, 3682, 3704, 3712, 3717, 3711, 3754, 3755,
+ 3760, 3765, 3770, 3775, 3759, 3844, 3849, 3854, 3859, 3843,
+ 3937, 3942, 3972, 3977, 3936, 3995, 4000, 4053, 4058, 3993,
+ 4095, 4101, 4108, 4115, 4116, 4128, 4134, 4176, 4127, 4198,
+ 4197, 4208, 4207, 4220, 4225, 4223, 4230, 4235, 4240, 4234,
+ 4281, 4280, 4291, 4290, 4303, 4308, 4306, 4313, 4318, 4323,
+ 4317, 4370, 4378, 4379, 4380, 4485, 4490, 4495, 4504, 4509,
+ 4503, 4521, 4529, 4534, 4528, 4546, 4554, 4559, 4553, 4571,
+ 4579, 4584, 4578, 4596, 4603, 4616, 4614, 4642, 4649, 4678,
+ 4716, 4717, 4721, 4751, 4791, 4796, 4750, 4815, 4820, 4813,
+ 4862, 4861, 4872, 4879, 4880, 4885, 4884, 4895, 4894, 4905,
+ 4904, 4915, 4914, 4925, 4924, 4935, 4934, 4945, 4944, 4956,
+ 5015, 5022, 5046, 5120, 5130, 5136, 5142, 5189, 5236, 5285,
+ 5284, 5334, 5339, 5344, 5349, 5354, 5359, 5333, 5413, 5412,
+ 5423, 5430, 5437, 5445, 5450, 5444, 5462, 5463, 5467, 5469,
+ 5468, 5479, 5478, 5493, 5529, 5491, 5563, 5599, 5561, 5631,
+ 5632, 5633, 5637, 5638, 5642, 5670, 5701, 5746, 5751, 5699,
+ 5768, 5778, 5797, 5809, 5808, 5848, 5898, 5903, 5846, 5920,
+ 5925, 5933, 5938, 5943, 5948, 5953, 5958, 5963, 5968, 5973,
+ 5981, 5999, 5998, 6041, 6048, 6059, 6073, 6080, 6104, 6111,
+ 6122, 6127, 6132, 6137, 6121, 6152, 6159, 6164, 6171, 6170,
+ 6179, 6178, 6189, 6258, 6308, 6312, 6313, 6317, 6331, 6336,
+ 6341, 6335, 6401, 6406, 6400, 6421, 6425, 6426, 6431, 6430,
+ 6441, 6440, 6451, 6450, 6461, 6460
};
#endif
@@ -2848,7 +2850,7 @@ tao_yyreduce:
case 39:
{
-// module : IDL_MODULE
+// module_header : IDL_MODULE
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleSeen);
}
break;
@@ -2856,11 +2858,18 @@ tao_yyreduce:
case 40:
{
-// UTL_ScopedName n ($3, 0);
- AST_Module *m = 0;
- UTL_Scope *s = idl_global->scopes ().top_non_null ();
+ (tao_yyval.idlist) = (tao_yyvsp[(3) - (3)].idlist);
+ }
+ break;
+ case 41:
+
+ {
+// fixed_module : module_header
idl_global->set_parse_state (IDL_GlobalData::PS_ModuleIDSeen);
+ // Check that scoped name contains no delimitor.
+ AST_Module *m = 0;
+ UTL_Scope *s = idl_global->scopes ().top_non_null ();
/*
* Make a new module and add it to the enclosing scope
@@ -2868,7 +2877,7 @@ tao_yyreduce:
if (s != 0)
{
m = idl_global->gen ()->create_module (s,
- (tao_yyvsp[(3) - (3)].idlist));
+ (tao_yyvsp[(1) - (1)].idlist));
(void) s->fe_add_module (m);
}
@@ -2879,14 +2888,6 @@ tao_yyreduce:
}
break;
- case 41:
-
- {
-// fixed_module : module_header
- // Check that scoped name contains no delimitor.
- }
- break;
-
case 42:
{
@@ -2915,6 +2916,13 @@ tao_yyreduce:
}
break;
+ case 45:
+
+ {
+ idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleIDSeen);
+ }
+ break;
+
case 46:
{
@@ -2933,26 +2941,46 @@ tao_yyreduce:
{
// '>'
-// idl_global->set_parse_state (IDL_GlobalData::PS_TmplInterfaceQsSeen);
-// $<plval>$ = $4;
+ idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleParamsSeen);
+
+ AST_Template_Module *tm =
+ idl_global->gen ()->create_template_module ((tao_yyvsp[(1) - (5)].idlist),
+ (tao_yyvsp[(3) - (5)].plval));
+
+ UTL_Scope *s = idl_global->scopes ().top_non_null ();
+
+ (void) s->fe_add_module (tm);
+
+ /*
+ * Push it on the stack
+ */
+ idl_global->scopes ().push (tm);
}
break;
case 49:
{
+ idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleSqSeen);
}
break;
case 50:
{
+ idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleBodySeen);
}
break;
case 51:
{
+ idl_global->set_parse_state (IDL_GlobalData::PS_TmplModuleQsSeen);
+
+ /*
+ * Finished with this module - pop it from the scope stack.
+ */
+ idl_global->scopes ().pop ();
}
break;