From f439f866881465e0e43cd56e885973179d95f52c Mon Sep 17 00:00:00 2001 From: Houtan Bastani <houtan@dynare.org> Date: Wed, 28 Feb 2018 10:44:24 +0100 Subject: [PATCH] fix bug with the collection of dynamic variables for diff operator --- src/ExprNode.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ExprNode.cc b/src/ExprNode.cc index cb6c94dc..5ed78458 100644 --- a/src/ExprNode.cc +++ b/src/ExprNode.cc @@ -2521,7 +2521,10 @@ UnaryOpNode::compile(ostream &CompileCode, unsigned int &instruction_number, void UnaryOpNode::collectDynamicVariables(SymbolType type_arg, set<pair<int, int> > &result) const { - arg->collectDynamicVariables(type_arg, result); + if (op_code == oDiff) + arg->decreaseLeadsLags(1)->collectDynamicVariables(type_arg, result); + else + arg->collectDynamicVariables(type_arg, result); } pair<int, expr_t> -- GitLab