1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-21 10:13:43 +03:00

0025329: ExprIntrp_GenExp can not parse unary plus

Formatting

Test case for issue CR25329
This commit is contained in:
esa 2014-10-09 15:44:35 +04:00 committed by bugmaster
parent 3910bc6501
commit ab1469893c
3 changed files with 57 additions and 38 deletions

View File

@ -28,6 +28,7 @@ extern void ExprIntrp_ProductOperator();
extern void ExprIntrp_DivideOperator(); extern void ExprIntrp_DivideOperator();
extern void ExprIntrp_ExpOperator(); extern void ExprIntrp_ExpOperator();
extern void ExprIntrp_UnaryMinusOperator(); extern void ExprIntrp_UnaryMinusOperator();
extern void ExprIntrp_UnaryPlusOperator();
extern void ExprIntrp_VariableIdentifier(); extern void ExprIntrp_VariableIdentifier();
extern void ExprIntrp_NumValue(); extern void ExprIntrp_NumValue();
extern void ExprIntrp_EndFunction(); extern void ExprIntrp_EndFunction();
@ -98,6 +99,7 @@ GenExpr : GenExpr SUMOP GenExpr {ExprIntrp_SumOperator();}
| PARENTHESIS GenExpr ENDPARENTHESIS | PARENTHESIS GenExpr ENDPARENTHESIS
| BRACKET GenExpr ENDBRACKET | BRACKET GenExpr ENDBRACKET
| MINUSOP GenExpr {ExprIntrp_UnaryMinusOperator();} | MINUSOP GenExpr {ExprIntrp_UnaryMinusOperator();}
| SUMOP GenExpr {ExprIntrp_UnaryPlusOperator();}
| SingleExpr | SingleExpr
| Derivation | Derivation
| ConstantDefinition | ConstantDefinition

View File

@ -430,6 +430,12 @@ extern "C" void ExprIntrp_UnaryMinusOperator()
ExprIntrp_Recept.Push(res->ShallowSimplified()); ExprIntrp_Recept.Push(res->ShallowSimplified());
} }
extern "C" void ExprIntrp_UnaryPlusOperator()
{
Handle(Expr_GeneralExpression) op = ExprIntrp_Recept.Pop();
ExprIntrp_Recept.Push(op);
}
extern "C" void ExprIntrp_VariableIdentifier() extern "C" void ExprIntrp_VariableIdentifier()
{ {
const TCollection_AsciiString& thename = ExprIntrp_GetResult(); const TCollection_AsciiString& thename = ExprIntrp_GetResult();

11
tests/bugs/fclasses/bug25329 Executable file
View File

@ -0,0 +1,11 @@
puts "============"
puts "OCC25329"
puts "============"
puts ""
#######################################################################
# ExprIntrp_GenExp can not parse unary plus
#######################################################################
pload QAcommands
OCC22611 "+1" 1