0, 119, 119, 120, 123, 123, 123, 123, 126, 130,
135, 140, 141, 148, 147, 175, 178, 185, 184, 196,
197, 199, 200, 201, 204, 208, 212, 217, 225, 226,
- 232, 233, 234, 235, 236, 243, 248, 243, 267, 268,
- 271, 275, 281, 282, 285, 292, 293, 297, 296, 308,
- 309, 311, 312, 313, 316, 324, 338, 347, 348, 349,
- 350, 351, 357, 362, 366, 372, 373
+ 232, 233, 234, 235, 236, 243, 248, 243, 268, 269,
+ 272, 276, 282, 283, 286, 293, 294, 298, 297, 309,
+ 310, 312, 313, 314, 317, 325, 339, 348, 349, 350,
+ 351, 352, 358, 363, 367, 373, 374
};
#endif
m_Item = boost::make_shared<ConfigItemBuilder>(yylloc);
m_Item->SetType((yyvsp[(4) - (5)].text));
m_Item->SetName((yyvsp[(5) - (5)].text));
+ m_Item->SetUnit(ConfigCompilerContext::GetContext()->GetUnit());
}
break;
case 37:
/* Line 1806 of yacc.c */
-#line 254 "config_parser.yy"
+#line 255 "config_parser.yy"
{
ExpressionList::Ptr exprl = *(yyvsp[(8) - (8)].variant);
delete (yyvsp[(8) - (8)].variant);
case 40:
/* Line 1806 of yacc.c */
-#line 272 "config_parser.yy"
+#line 273 "config_parser.yy"
{
m_Abstract = true;
}
case 41:
/* Line 1806 of yacc.c */
-#line 276 "config_parser.yy"
+#line 277 "config_parser.yy"
{
m_Local = true;
}
case 44:
/* Line 1806 of yacc.c */
-#line 286 "config_parser.yy"
+#line 287 "config_parser.yy"
{
m_Item->AddParent((yyvsp[(1) - (1)].text));
free((yyvsp[(1) - (1)].text));
case 47:
/* Line 1806 of yacc.c */
-#line 297 "config_parser.yy"
+#line 298 "config_parser.yy"
{
m_ExpressionLists.push(boost::make_shared<ExpressionList>());
}
case 48:
/* Line 1806 of yacc.c */
-#line 302 "config_parser.yy"
+#line 303 "config_parser.yy"
{
(yyval.variant) = new Value(m_ExpressionLists.top());
m_ExpressionLists.pop();
case 54:
/* Line 1806 of yacc.c */
-#line 317 "config_parser.yy"
+#line 318 "config_parser.yy"
{
Expression expr((yyvsp[(1) - (3)].text), (yyvsp[(2) - (3)].op), *(yyvsp[(3) - (3)].variant), yylloc);
free((yyvsp[(1) - (3)].text));
case 55:
/* Line 1806 of yacc.c */
-#line 325 "config_parser.yy"
+#line 326 "config_parser.yy"
{
Expression subexpr((yyvsp[(3) - (6)].text), (yyvsp[(5) - (6)].op), *(yyvsp[(6) - (6)].variant), yylloc);
free((yyvsp[(3) - (6)].text));
case 56:
/* Line 1806 of yacc.c */
-#line 339 "config_parser.yy"
+#line 340 "config_parser.yy"
{
Expression expr((yyvsp[(1) - (1)].text), OperatorSet, (yyvsp[(1) - (1)].text), yylloc);
free((yyvsp[(1) - (1)].text));
case 61:
/* Line 1806 of yacc.c */
-#line 352 "config_parser.yy"
+#line 353 "config_parser.yy"
{
(yyval.op) = (yyvsp[(1) - (1)].op);
}
case 62:
/* Line 1806 of yacc.c */
-#line 358 "config_parser.yy"
+#line 359 "config_parser.yy"
{
(yyval.variant) = new Value((yyvsp[(1) - (1)].text));
free((yyvsp[(1) - (1)].text));
case 63:
/* Line 1806 of yacc.c */
-#line 363 "config_parser.yy"
+#line 364 "config_parser.yy"
{
(yyval.variant) = new Value((yyvsp[(1) - (1)].num));
}
case 64:
/* Line 1806 of yacc.c */
-#line 367 "config_parser.yy"
+#line 368 "config_parser.yy"
{
(yyval.variant) = new Value();
}
case 66:
/* Line 1806 of yacc.c */
-#line 374 "config_parser.yy"
+#line 375 "config_parser.yy"
{
(yyval.variant) = (yyvsp[(1) - (1)].variant);
}
/* Line 1806 of yacc.c */
-#line 1972 "config_parser.cc"
+#line 1973 "config_parser.cc"
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
/* Line 2067 of yacc.c */
-#line 378 "config_parser.yy"
+#line 379 "config_parser.yy"