From 95dda50de1e0abac61138b5df287561b1cb2fa46 Mon Sep 17 00:00:00 2001
From: houtanb <houtan@dynare.org>
Date: Fri, 23 Jun 2017 14:19:57 +0200
Subject: [PATCH] preprocessor: add tag information to cloned dynamic model

---
 DynamicModel.cc | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/DynamicModel.cc b/DynamicModel.cc
index 66345342..c83da453 100644
--- a/DynamicModel.cc
+++ b/DynamicModel.cc
@@ -3722,7 +3722,14 @@ DynamicModel::cloneDynamic(DynamicModel &dynamic_model) const
 
   // Convert equations
   for (size_t i = 0; i < equations.size(); i++)
-    dynamic_model.addEquation(equations[i]->cloneDynamic(dynamic_model), equations_lineno[i]);
+    {
+      vector<pair<string, string> > eq_tags;
+      for (vector<pair<int, pair<string, string> > >::const_iterator it = equation_tags.begin();
+           it != equation_tags.end(); ++it)
+        if (it->first == i)
+          eq_tags.push_back(it->second);
+      dynamic_model.addEquation(equations[i]->cloneDynamic(dynamic_model), equations_lineno[i], eq_tags);
+    }
 
   // Convert auxiliary equations
   for (deque<BinaryOpNode *>::const_iterator it = aux_equations.begin();
-- 
GitLab