浏览代码

allow passing dclasses as parameters

David Rose 21 年之前
父节点
当前提交
8f83ac7be0
共有 1 个文件被更改,包括 98 次插入98 次删除
  1. 98 98
      direct/src/dcparser/dcParser.cxx.prebuilt

+ 98 - 98
direct/src/dcparser/dcParser.cxx.prebuilt

@@ -273,17 +273,17 @@ static const short yyrline[] =
      458,   462,   468,   468,   481,   483,   486,   488,   491,   500,
      458,   462,   468,   468,   481,   483,   486,   488,   491,   500,
      500,   511,   515,   517,   517,   545,   547,   547,   575,   577,
      500,   511,   515,   517,   517,   545,   547,   547,   575,   577,
      580,   582,   585,   590,   594,   600,   605,   614,   630,   644,
      580,   582,   585,   590,   594,   600,   605,   614,   630,   644,
-     646,   681,   697,   715,   720,   727,   734,   743,   749,   755,
-     765,   770,   777,   784,   791,   797,   803,   811,   813,   823,
-     829,   844,   859,   865,   875,   878,   889,   903,   907,   911,
-     916,   920,   923,   933,   937,   942,   946,   950,   954,   958,
-     958,   966,   966,   974,   974,   982,   988,   994,  1000,  1008,
-    1010,  1013,  1015,  1018,  1020,  1023,  1028,  1032,  1036,  1040,
-    1044,  1048,  1052,  1056,  1060,  1064,  1068,  1072,  1076,  1080,
-    1084,  1088,  1092,  1096,  1100,  1106,  1111,  1115,  1119,  1123,
-    1127,  1131,  1135,  1139,  1143,  1149,  1159,  1159,  1170,  1186,
-    1193,  1206,  1211,  1214,  1214,  1228,  1230,  1231,  1232,  1244,
-    1244,  1261,  1266,  1272
+     646,   678,   694,   712,   717,   724,   731,   740,   746,   752,
+     762,   767,   774,   781,   788,   794,   800,   808,   810,   820,
+     826,   841,   856,   862,   872,   875,   886,   900,   904,   908,
+     913,   917,   920,   930,   934,   939,   943,   947,   951,   955,
+     955,   963,   963,   971,   971,   979,   985,   991,   997,  1005,
+    1007,  1010,  1012,  1015,  1017,  1020,  1025,  1029,  1033,  1037,
+    1041,  1045,  1049,  1053,  1057,  1061,  1065,  1069,  1073,  1077,
+    1081,  1085,  1089,  1093,  1097,  1103,  1108,  1112,  1116,  1120,
+    1124,  1128,  1132,  1136,  1140,  1146,  1156,  1156,  1167,  1183,
+    1190,  1203,  1208,  1211,  1211,  1225,  1227,  1228,  1229,  1241,
+    1241,  1258,  1263,  1269
 };
 };
 #endif
 #endif
 
 
@@ -1734,7 +1734,7 @@ case 80:
 }
 }
     break;
     break;
 case 81:
 case 81:
-#line 682 "dcParser.yxx"
+#line 679 "dcParser.yxx"
 {
 {
   // This is an inline struct definition.
   // This is an inline struct definition.
   if (yyvsp[0].u.dclass == (DCClass *)NULL) {
   if (yyvsp[0].u.dclass == (DCClass *)NULL) {
@@ -1752,7 +1752,7 @@ case 81:
 }
 }
     break;
     break;
 case 82:
 case 82:
-#line 698 "dcParser.yxx"
+#line 695 "dcParser.yxx"
 {
 {
   // This is an inline switch definition.
   // This is an inline switch definition.
   if (yyvsp[0].u.dswitch == (DCSwitch *)NULL) {
   if (yyvsp[0].u.dswitch == (DCSwitch *)NULL) {
@@ -1770,13 +1770,13 @@ case 82:
 }
 }
     break;
     break;
 case 83:
 case 83:
-#line 717 "dcParser.yxx"
+#line 714 "dcParser.yxx"
 {
 {
   double_range.clear();
   double_range.clear();
 }
 }
     break;
     break;
 case 84:
 case 84:
-#line 721 "dcParser.yxx"
+#line 718 "dcParser.yxx"
 {
 {
   double_range.clear();
   double_range.clear();
   if (!double_range.add_range(yyvsp[0].u.real, yyvsp[0].u.real)) {
   if (!double_range.add_range(yyvsp[0].u.real, yyvsp[0].u.real)) {
@@ -1785,7 +1785,7 @@ case 84:
 }
 }
     break;
     break;
 case 85:
 case 85:
-#line 728 "dcParser.yxx"
+#line 725 "dcParser.yxx"
 {
 {
   double_range.clear();
   double_range.clear();
   if (!double_range.add_range(yyvsp[-2].u.real, yyvsp[0].u.real)) {
   if (!double_range.add_range(yyvsp[-2].u.real, yyvsp[0].u.real)) {
@@ -1794,7 +1794,7 @@ case 85:
 }
 }
     break;
     break;
 case 86:
 case 86:
-#line 735 "dcParser.yxx"
+#line 732 "dcParser.yxx"
 {
 {
   double_range.clear();
   double_range.clear();
   if (yyvsp[0].u.real >= 0) {
   if (yyvsp[0].u.real >= 0) {
@@ -1805,7 +1805,7 @@ case 86:
 }
 }
     break;
     break;
 case 87:
 case 87:
-#line 744 "dcParser.yxx"
+#line 741 "dcParser.yxx"
 {
 {
   if (!double_range.add_range(yyvsp[0].u.real, yyvsp[0].u.real)) {
   if (!double_range.add_range(yyvsp[0].u.real, yyvsp[0].u.real)) {
     yyerror("Overlapping range");
     yyerror("Overlapping range");
@@ -1813,7 +1813,7 @@ case 87:
 }
 }
     break;
     break;
 case 88:
 case 88:
-#line 750 "dcParser.yxx"
+#line 747 "dcParser.yxx"
 {
 {
   if (!double_range.add_range(yyvsp[-2].u.real, yyvsp[0].u.real)) {
   if (!double_range.add_range(yyvsp[-2].u.real, yyvsp[0].u.real)) {
     yyerror("Overlapping range");
     yyerror("Overlapping range");
@@ -1821,7 +1821,7 @@ case 88:
 }
 }
     break;
     break;
 case 89:
 case 89:
-#line 756 "dcParser.yxx"
+#line 753 "dcParser.yxx"
 {
 {
   if (yyvsp[0].u.real >= 0) {
   if (yyvsp[0].u.real >= 0) {
     yyerror("Syntax error");
     yyerror("Syntax error");
@@ -1831,13 +1831,13 @@ case 89:
 }
 }
     break;
     break;
 case 90:
 case 90:
-#line 767 "dcParser.yxx"
+#line 764 "dcParser.yxx"
 {
 {
   uint_range.clear();
   uint_range.clear();
 }
 }
     break;
     break;
 case 91:
 case 91:
-#line 771 "dcParser.yxx"
+#line 768 "dcParser.yxx"
 {
 {
   uint_range.clear();
   uint_range.clear();
   if (!uint_range.add_range(yyvsp[0].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[0].u.s_uint, yyvsp[0].u.s_uint)) {
@@ -1846,7 +1846,7 @@ case 91:
 }
 }
     break;
     break;
 case 92:
 case 92:
-#line 778 "dcParser.yxx"
+#line 775 "dcParser.yxx"
 {
 {
   uint_range.clear();
   uint_range.clear();
   if (!uint_range.add_range(yyvsp[-2].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[-2].u.s_uint, yyvsp[0].u.s_uint)) {
@@ -1855,7 +1855,7 @@ case 92:
 }
 }
     break;
     break;
 case 93:
 case 93:
-#line 785 "dcParser.yxx"
+#line 782 "dcParser.yxx"
 {
 {
   uint_range.clear();
   uint_range.clear();
   if (!uint_range.add_range(yyvsp[-1].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[-1].u.s_uint, yyvsp[0].u.s_uint)) {
@@ -1864,7 +1864,7 @@ case 93:
 }
 }
     break;
     break;
 case 94:
 case 94:
-#line 792 "dcParser.yxx"
+#line 789 "dcParser.yxx"
 {
 {
   if (!uint_range.add_range(yyvsp[0].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[0].u.s_uint, yyvsp[0].u.s_uint)) {
     yyerror("Overlapping range");
     yyerror("Overlapping range");
@@ -1872,7 +1872,7 @@ case 94:
 }
 }
     break;
     break;
 case 95:
 case 95:
-#line 798 "dcParser.yxx"
+#line 795 "dcParser.yxx"
 {
 {
   if (!uint_range.add_range(yyvsp[-2].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[-2].u.s_uint, yyvsp[0].u.s_uint)) {
     yyerror("Overlapping range");
     yyerror("Overlapping range");
@@ -1880,7 +1880,7 @@ case 95:
 }
 }
     break;
     break;
 case 96:
 case 96:
-#line 804 "dcParser.yxx"
+#line 801 "dcParser.yxx"
 {
 {
   if (!uint_range.add_range(yyvsp[-1].u.s_uint, yyvsp[0].u.s_uint)) {
   if (!uint_range.add_range(yyvsp[-1].u.s_uint, yyvsp[0].u.s_uint)) {
     yyerror("Overlapping range");
     yyerror("Overlapping range");
@@ -1888,7 +1888,7 @@ case 96:
 }
 }
     break;
     break;
 case 98:
 case 98:
-#line 814 "dcParser.yxx"
+#line 811 "dcParser.yxx"
 {
 {
   if (yyvsp[-3].u.parameter == (DCParameter *)NULL) {
   if (yyvsp[-3].u.parameter == (DCParameter *)NULL) {
     yyval.u.parameter = NULL;
     yyval.u.parameter = NULL;
@@ -1898,14 +1898,14 @@ case 98:
 }
 }
     break;
     break;
 case 99:
 case 99:
-#line 825 "dcParser.yxx"
+#line 822 "dcParser.yxx"
 {
 {
   current_parameter->set_name(yyvsp[0].str);
   current_parameter->set_name(yyvsp[0].str);
   yyval.u.parameter = current_parameter;
   yyval.u.parameter = current_parameter;
 }
 }
     break;
     break;
 case 100:
 case 100:
-#line 830 "dcParser.yxx"
+#line 827 "dcParser.yxx"
 {
 {
   DCSimpleParameter *simple_param = yyvsp[-2].u.parameter->as_simple_parameter();
   DCSimpleParameter *simple_param = yyvsp[-2].u.parameter->as_simple_parameter();
   if (simple_param == NULL || simple_param->get_typedef() != (DCTypedef *)NULL) {
   if (simple_param == NULL || simple_param->get_typedef() != (DCTypedef *)NULL) {
@@ -1922,7 +1922,7 @@ case 100:
 }
 }
     break;
     break;
 case 101:
 case 101:
-#line 845 "dcParser.yxx"
+#line 842 "dcParser.yxx"
 {
 {
   DCSimpleParameter *simple_param = yyvsp[-2].u.parameter->as_simple_parameter();
   DCSimpleParameter *simple_param = yyvsp[-2].u.parameter->as_simple_parameter();
   if (simple_param == NULL || simple_param->get_typedef() != (DCTypedef *)NULL) {
   if (simple_param == NULL || simple_param->get_typedef() != (DCTypedef *)NULL) {
@@ -1939,13 +1939,13 @@ case 101:
 }
 }
     break;
     break;
 case 102:
 case 102:
-#line 860 "dcParser.yxx"
+#line 857 "dcParser.yxx"
 {
 {
   yyval.u.parameter = yyvsp[-3].u.parameter->append_array_specification(uint_range);
   yyval.u.parameter = yyvsp[-3].u.parameter->append_array_specification(uint_range);
 }
 }
     break;
     break;
 case 103:
 case 103:
-#line 867 "dcParser.yxx"
+#line 864 "dcParser.yxx"
 {
 {
   if (yyvsp[0].str.length() != 1) {
   if (yyvsp[0].str.length() != 1) {
     yyerror("Single character required.");
     yyerror("Single character required.");
@@ -1956,7 +1956,7 @@ case 103:
 }
 }
     break;
     break;
 case 105:
 case 105:
-#line 880 "dcParser.yxx"
+#line 877 "dcParser.yxx"
 {
 {
   yyval.u.s_uint = (unsigned int)yyvsp[0].u.uint64;
   yyval.u.s_uint = (unsigned int)yyvsp[0].u.uint64;
   if (yyval.u.s_uint != yyvsp[0].u.uint64) {
   if (yyval.u.s_uint != yyvsp[0].u.uint64) {
@@ -1966,7 +1966,7 @@ case 105:
 }
 }
     break;
     break;
 case 106:
 case 106:
-#line 891 "dcParser.yxx"
+#line 888 "dcParser.yxx"
 {
 {
   yyval.u.s_uint = (unsigned int)-yyvsp[0].u.int64;
   yyval.u.s_uint = (unsigned int)-yyvsp[0].u.int64;
   if (yyvsp[0].u.int64 >= 0) {
   if (yyvsp[0].u.int64 >= 0) {
@@ -1979,19 +1979,19 @@ case 106:
 }
 }
     break;
     break;
 case 109:
 case 109:
-#line 913 "dcParser.yxx"
+#line 910 "dcParser.yxx"
 {
 {
   yyval.u.real = (double)yyvsp[0].u.uint64;
   yyval.u.real = (double)yyvsp[0].u.uint64;
 }
 }
     break;
     break;
 case 110:
 case 110:
-#line 917 "dcParser.yxx"
+#line 914 "dcParser.yxx"
 {
 {
   yyval.u.real = (double)yyvsp[0].u.int64;
   yyval.u.real = (double)yyvsp[0].u.int64;
 }
 }
     break;
     break;
 case 112:
 case 112:
-#line 925 "dcParser.yxx"
+#line 922 "dcParser.yxx"
 {
 {
   if (yyvsp[0].str.length() != 1) {
   if (yyvsp[0].str.length() != 1) {
     yyerror("Single character required.");
     yyerror("Single character required.");
@@ -2002,73 +2002,73 @@ case 112:
 }
 }
     break;
     break;
 case 114:
 case 114:
-#line 939 "dcParser.yxx"
+#line 936 "dcParser.yxx"
 {
 {
   current_packer->pack_int64(yyvsp[0].u.int64);
   current_packer->pack_int64(yyvsp[0].u.int64);
 }
 }
     break;
     break;
 case 115:
 case 115:
-#line 943 "dcParser.yxx"
+#line 940 "dcParser.yxx"
 {
 {
   current_packer->pack_uint64(yyvsp[0].u.uint64);
   current_packer->pack_uint64(yyvsp[0].u.uint64);
 }
 }
     break;
     break;
 case 116:
 case 116:
-#line 947 "dcParser.yxx"
+#line 944 "dcParser.yxx"
 {
 {
   current_packer->pack_double(yyvsp[0].u.real);
   current_packer->pack_double(yyvsp[0].u.real);
 }
 }
     break;
     break;
 case 117:
 case 117:
-#line 951 "dcParser.yxx"
+#line 948 "dcParser.yxx"
 {
 {
   current_packer->pack_string(yyvsp[0].str);
   current_packer->pack_string(yyvsp[0].str);
 }
 }
     break;
     break;
 case 118:
 case 118:
-#line 955 "dcParser.yxx"
+#line 952 "dcParser.yxx"
 {
 {
   current_packer->pack_literal_value(yyvsp[0].str);
   current_packer->pack_literal_value(yyvsp[0].str);
 }
 }
     break;
     break;
 case 119:
 case 119:
-#line 959 "dcParser.yxx"
+#line 956 "dcParser.yxx"
 {
 {
   current_packer->push();
   current_packer->push();
 }
 }
     break;
     break;
 case 120:
 case 120:
-#line 963 "dcParser.yxx"
+#line 960 "dcParser.yxx"
 {
 {
   current_packer->pop();
   current_packer->pop();
 }
 }
     break;
     break;
 case 121:
 case 121:
-#line 967 "dcParser.yxx"
+#line 964 "dcParser.yxx"
 {
 {
   current_packer->push();
   current_packer->push();
 }
 }
     break;
     break;
 case 122:
 case 122:
-#line 971 "dcParser.yxx"
+#line 968 "dcParser.yxx"
 {
 {
   current_packer->pop();
   current_packer->pop();
 }
 }
     break;
     break;
 case 123:
 case 123:
-#line 975 "dcParser.yxx"
+#line 972 "dcParser.yxx"
 {
 {
   current_packer->push();
   current_packer->push();
 }
 }
     break;
     break;
 case 124:
 case 124:
-#line 979 "dcParser.yxx"
+#line 976 "dcParser.yxx"
 {
 {
   current_packer->pop();
   current_packer->pop();
 }
 }
     break;
     break;
 case 125:
 case 125:
-#line 983 "dcParser.yxx"
+#line 980 "dcParser.yxx"
 {
 {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
     current_packer->pack_int64(yyvsp[-2].u.int64);
     current_packer->pack_int64(yyvsp[-2].u.int64);
@@ -2076,7 +2076,7 @@ case 125:
 }
 }
     break;
     break;
 case 126:
 case 126:
-#line 989 "dcParser.yxx"
+#line 986 "dcParser.yxx"
 {
 {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
     current_packer->pack_uint64(yyvsp[-2].u.uint64);
     current_packer->pack_uint64(yyvsp[-2].u.uint64);
@@ -2084,7 +2084,7 @@ case 126:
 }
 }
     break;
     break;
 case 127:
 case 127:
-#line 995 "dcParser.yxx"
+#line 992 "dcParser.yxx"
 {
 {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
     current_packer->pack_double(yyvsp[-2].u.real);
     current_packer->pack_double(yyvsp[-2].u.real);
@@ -2092,7 +2092,7 @@ case 127:
 }
 }
     break;
     break;
 case 128:
 case 128:
-#line 1001 "dcParser.yxx"
+#line 998 "dcParser.yxx"
 {
 {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
   for (unsigned int i = 0; i < yyvsp[0].u.s_uint; i++) {
     current_packer->pack_literal_value(yyvsp[-2].str);
     current_packer->pack_literal_value(yyvsp[-2].str);
@@ -2100,187 +2100,187 @@ case 128:
 }
 }
     break;
     break;
 case 135:
 case 135:
-#line 1025 "dcParser.yxx"
+#line 1022 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int8;
   yyval.u.subatomic = ST_int8;
 }
 }
     break;
     break;
 case 136:
 case 136:
-#line 1029 "dcParser.yxx"
+#line 1026 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int16;
   yyval.u.subatomic = ST_int16;
 }
 }
     break;
     break;
 case 137:
 case 137:
-#line 1033 "dcParser.yxx"
+#line 1030 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int32;
   yyval.u.subatomic = ST_int32;
 }
 }
     break;
     break;
 case 138:
 case 138:
-#line 1037 "dcParser.yxx"
+#line 1034 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int64;
   yyval.u.subatomic = ST_int64;
 }
 }
     break;
     break;
 case 139:
 case 139:
-#line 1041 "dcParser.yxx"
+#line 1038 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint8;
   yyval.u.subatomic = ST_uint8;
 }
 }
     break;
     break;
 case 140:
 case 140:
-#line 1045 "dcParser.yxx"
+#line 1042 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint16;
   yyval.u.subatomic = ST_uint16;
 }
 }
     break;
     break;
 case 141:
 case 141:
-#line 1049 "dcParser.yxx"
+#line 1046 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint32;
   yyval.u.subatomic = ST_uint32;
 }
 }
     break;
     break;
 case 142:
 case 142:
-#line 1053 "dcParser.yxx"
+#line 1050 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint64;
   yyval.u.subatomic = ST_uint64;
 }
 }
     break;
     break;
 case 143:
 case 143:
-#line 1057 "dcParser.yxx"
+#line 1054 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_float64;
   yyval.u.subatomic = ST_float64;
 }
 }
     break;
     break;
 case 144:
 case 144:
-#line 1061 "dcParser.yxx"
+#line 1058 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_string;
   yyval.u.subatomic = ST_string;
 }
 }
     break;
     break;
 case 145:
 case 145:
-#line 1065 "dcParser.yxx"
+#line 1062 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_blob;
   yyval.u.subatomic = ST_blob;
 }
 }
     break;
     break;
 case 146:
 case 146:
-#line 1069 "dcParser.yxx"
+#line 1066 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_blob32;
   yyval.u.subatomic = ST_blob32;
 }
 }
     break;
     break;
 case 147:
 case 147:
-#line 1073 "dcParser.yxx"
+#line 1070 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int8array;
   yyval.u.subatomic = ST_int8array;
 }
 }
     break;
     break;
 case 148:
 case 148:
-#line 1077 "dcParser.yxx"
+#line 1074 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int16array;
   yyval.u.subatomic = ST_int16array;
 }
 }
     break;
     break;
 case 149:
 case 149:
-#line 1081 "dcParser.yxx"
+#line 1078 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_int32array;
   yyval.u.subatomic = ST_int32array;
 }
 }
     break;
     break;
 case 150:
 case 150:
-#line 1085 "dcParser.yxx"
+#line 1082 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint8array;
   yyval.u.subatomic = ST_uint8array;
 }
 }
     break;
     break;
 case 151:
 case 151:
-#line 1089 "dcParser.yxx"
+#line 1086 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint16array;
   yyval.u.subatomic = ST_uint16array;
 }
 }
     break;
     break;
 case 152:
 case 152:
-#line 1093 "dcParser.yxx"
+#line 1090 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint32array;
   yyval.u.subatomic = ST_uint32array;
 }
 }
     break;
     break;
 case 153:
 case 153:
-#line 1097 "dcParser.yxx"
+#line 1094 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_uint32uint8array;
   yyval.u.subatomic = ST_uint32uint8array;
 }
 }
     break;
     break;
 case 154:
 case 154:
-#line 1101 "dcParser.yxx"
+#line 1098 "dcParser.yxx"
 {
 {
   yyval.u.subatomic = ST_char;
   yyval.u.subatomic = ST_char;
 }
 }
     break;
     break;
 case 155:
 case 155:
-#line 1108 "dcParser.yxx"
+#line 1105 "dcParser.yxx"
 {
 {
   yyval.u.s_int = 0;
   yyval.u.s_int = 0;
 }
 }
     break;
     break;
 case 156:
 case 156:
-#line 1112 "dcParser.yxx"
+#line 1109 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_required;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_required;
 }
 }
     break;
     break;
 case 157:
 case 157:
-#line 1116 "dcParser.yxx"
+#line 1113 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_broadcast;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_broadcast;
 }
 }
     break;
     break;
 case 158:
 case 158:
-#line 1120 "dcParser.yxx"
+#line 1117 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_p2p;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_p2p;
 }
 }
     break;
     break;
 case 159:
 case 159:
-#line 1124 "dcParser.yxx"
+#line 1121 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_ram;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_ram;
 }
 }
     break;
     break;
 case 160:
 case 160:
-#line 1128 "dcParser.yxx"
+#line 1125 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_db;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_db;
 }
 }
     break;
     break;
 case 161:
 case 161:
-#line 1132 "dcParser.yxx"
+#line 1129 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_clsend;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_clsend;
 }
 }
     break;
     break;
 case 162:
 case 162:
-#line 1136 "dcParser.yxx"
+#line 1133 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_clrecv;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_clrecv;
 }
 }
     break;
     break;
 case 163:
 case 163:
-#line 1140 "dcParser.yxx"
+#line 1137 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_ownsend;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_ownsend;
 }
 }
     break;
     break;
 case 164:
 case 164:
-#line 1144 "dcParser.yxx"
+#line 1141 "dcParser.yxx"
 {
 {
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_airecv;
   yyval.u.s_int = yyvsp[-1].u.s_int | DCAtomicField::F_airecv;
 }
 }
     break;
     break;
 case 165:
 case 165:
-#line 1151 "dcParser.yxx"
+#line 1148 "dcParser.yxx"
 {
 {
   if (yyvsp[0].u.s_int != 0) {
   if (yyvsp[0].u.s_int != 0) {
     yyerror("Server flags are not allowed here.");
     yyerror("Server flags are not allowed here.");
@@ -2289,19 +2289,19 @@ case 165:
 }
 }
     break;
     break;
 case 166:
 case 166:
-#line 1161 "dcParser.yxx"
+#line 1158 "dcParser.yxx"
 {
 {
   current_molecular = new DCMolecularField(yyvsp[-1].str, current_class);
   current_molecular = new DCMolecularField(yyvsp[-1].str, current_class);
 }
 }
     break;
     break;
 case 167:
 case 167:
-#line 1165 "dcParser.yxx"
+#line 1162 "dcParser.yxx"
 {
 {
   yyval.u.field = current_molecular;
   yyval.u.field = current_molecular;
 }
 }
     break;
     break;
 case 168:
 case 168:
-#line 1172 "dcParser.yxx"
+#line 1169 "dcParser.yxx"
 {
 {
   DCField *field = current_class->get_field_by_name(yyvsp[0].str);
   DCField *field = current_class->get_field_by_name(yyvsp[0].str);
   yyval.u.atomic = (DCAtomicField *)NULL;
   yyval.u.atomic = (DCAtomicField *)NULL;
@@ -2316,7 +2316,7 @@ case 168:
 }
 }
     break;
     break;
 case 169:
 case 169:
-#line 1188 "dcParser.yxx"
+#line 1185 "dcParser.yxx"
 {
 {
   if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) {
   if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) {
     current_molecular->add_atomic(yyvsp[0].u.atomic);
     current_molecular->add_atomic(yyvsp[0].u.atomic);
@@ -2324,7 +2324,7 @@ case 169:
 }
 }
     break;
     break;
 case 170:
 case 170:
-#line 1194 "dcParser.yxx"
+#line 1191 "dcParser.yxx"
 {
 {
   if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) {
   if (yyvsp[0].u.atomic != (DCAtomicField *)NULL) {
     current_molecular->add_atomic(yyvsp[0].u.atomic);
     current_molecular->add_atomic(yyvsp[0].u.atomic);
@@ -2337,27 +2337,27 @@ case 170:
 }
 }
     break;
     break;
 case 171:
 case 171:
-#line 1208 "dcParser.yxx"
+#line 1205 "dcParser.yxx"
 {
 {
   yyval.str = "";
   yyval.str = "";
 }
 }
     break;
     break;
 case 173:
 case 173:
-#line 1216 "dcParser.yxx"
+#line 1213 "dcParser.yxx"
 {
 {
   yyval.u.dswitch = current_switch;
   yyval.u.dswitch = current_switch;
   current_switch = new DCSwitch(yyvsp[-4].str, yyvsp[-2].u.parameter);
   current_switch = new DCSwitch(yyvsp[-4].str, yyvsp[-2].u.parameter);
 }
 }
     break;
     break;
 case 174:
 case 174:
-#line 1221 "dcParser.yxx"
+#line 1218 "dcParser.yxx"
 {
 {
   yyval.u.dswitch = current_switch;
   yyval.u.dswitch = current_switch;
   current_switch = (DCSwitch *)yyvsp[-2].u.parameter;
   current_switch = (DCSwitch *)yyvsp[-2].u.parameter;
 }
 }
     break;
     break;
 case 178:
 case 178:
-#line 1233 "dcParser.yxx"
+#line 1230 "dcParser.yxx"
 {
 {
   if (current_switch->get_num_cases() == 0) {
   if (current_switch->get_num_cases() == 0) {
     yyerror("case declaration required before first element");
     yyerror("case declaration required before first element");
@@ -2369,7 +2369,7 @@ case 178:
 }
 }
     break;
     break;
 case 179:
 case 179:
-#line 1246 "dcParser.yxx"
+#line 1243 "dcParser.yxx"
 {
 {
   current_packer = &default_packer;
   current_packer = &default_packer;
   current_packer->clear_data();
   current_packer->clear_data();
@@ -2377,7 +2377,7 @@ case 179:
 }
 }
     break;
     break;
 case 180:
 case 180:
-#line 1252 "dcParser.yxx"
+#line 1249 "dcParser.yxx"
 {
 {
   if (!current_packer->end_pack()) {
   if (!current_packer->end_pack()) {
     yyerror("Invalid value for switch parameter");
     yyerror("Invalid value for switch parameter");
@@ -2387,13 +2387,13 @@ case 180:
 }
 }
     break;
     break;
 case 181:
 case 181:
-#line 1263 "dcParser.yxx"
+#line 1260 "dcParser.yxx"
 {
 {
   yyval.u.field = yyvsp[-1].u.parameter;
   yyval.u.field = yyvsp[-1].u.parameter;
 }
 }
     break;
     break;
 case 182:
 case 182:
-#line 1267 "dcParser.yxx"
+#line 1264 "dcParser.yxx"
 {
 {
   yyval.u.field = yyvsp[0].u.parameter;
   yyval.u.field = yyvsp[0].u.parameter;
 }
 }
@@ -2631,4 +2631,4 @@ yyreturn:
 #endif
 #endif
   return yyresult;
   return yyresult;
 }
 }
-#line 1275 "dcParser.yxx"
+#line 1272 "dcParser.yxx"