From f3544584182bedc2a3d68caf66f4e390a55bc057 Mon Sep 17 00:00:00 2001
From: Johannes Pfeifer <jpfeifer@gmx.de>
Date: Thu, 24 Jun 2021 15:04:21 +0200
Subject: [PATCH] method_of_moments: remove var_list_

---
 src/ComputingTasks.cc | 19 +------------------
 src/ComputingTasks.hh |  3 +--
 src/DynareBison.yy    |  3 +--
 src/ParsingDriver.cc  |  3 +--
 4 files changed, 4 insertions(+), 24 deletions(-)

diff --git a/src/ComputingTasks.cc b/src/ComputingTasks.cc
index bd12f523..a0839c1d 100644
--- a/src/ComputingTasks.cc
+++ b/src/ComputingTasks.cc
@@ -4742,9 +4742,7 @@ Smoother2histvalStatement::writeJsonOutput(ostream &output) const
   output << "}";
 }
 
-MethodOfMomentsStatement::MethodOfMomentsStatement(SymbolList symbol_list_arg,
-                                                     OptionsList options_list_arg) :
-  symbol_list{move(symbol_list_arg)},
+MethodOfMomentsStatement::MethodOfMomentsStatement(OptionsList options_list_arg) :
   options_list{move(options_list_arg)}
 {
 }
@@ -4752,15 +4750,6 @@ MethodOfMomentsStatement::MethodOfMomentsStatement(SymbolList symbol_list_arg,
 void
 MethodOfMomentsStatement::checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings)
 {
-  try
-    {
-      symbol_list.checkPass(warnings, { SymbolType::endogenous });
-    }
-  catch (SymbolList::SymbolListException &e)
-    {
-      cerr << "ERROR: method_of_moments: " << e.message << endl;
-      exit(EXIT_FAILURE);
-    }
   mod_file_struct.mom_estimation_present = true;
   // Fill in option_order of mod_file_struct
   if (auto it = options_list.num_options.find("order");
@@ -4815,7 +4804,6 @@ MethodOfMomentsStatement::checkPass(ModFileStructure &mod_file_struct, WarningCo
 void
 MethodOfMomentsStatement::writeOutput(ostream &output, const string &basename, bool minimal_workspace) const
 {
-  symbol_list.writeOutput("var_list_", output);
   options_list.writeOutput(output, "options_mom_");
 
   output << "[oo_, options_mom_, M_] = method_of_moments(bayestopt_, options_, oo_, estim_params_, M_, options_mom_);" << endl;  
@@ -4830,11 +4818,6 @@ MethodOfMomentsStatement::writeJsonOutput(ostream &output) const
       output << ", ";
       options_list.writeJsonOutput(output);
     }
-  if (!symbol_list.empty())
-    {
-      output << ", ";
-      symbol_list.writeJsonOutput(output);
-    }
   output << "}";
 }
 
diff --git a/src/ComputingTasks.hh b/src/ComputingTasks.hh
index 6725263b..f507f577 100644
--- a/src/ComputingTasks.hh
+++ b/src/ComputingTasks.hh
@@ -1125,10 +1125,9 @@ public:
 class MethodOfMomentsStatement : public Statement
 {
 private:  
-  const SymbolList symbol_list;
   const OptionsList options_list;
 public:
-  MethodOfMomentsStatement(SymbolList symbol_list_arg, OptionsList options_list_arg);
+  MethodOfMomentsStatement(OptionsList options_list_arg);
   void checkPass(ModFileStructure &mod_file_struct, WarningConsolidation &warnings) override;
   void writeOutput(ostream &output, const string &basename, bool minimal_workspace) const override;
   void writeJsonOutput(ostream &output) const override;
diff --git a/src/DynareBison.yy b/src/DynareBison.yy
index ff8876e5..05f6d59e 100644
--- a/src/DynareBison.yy
+++ b/src/DynareBison.yy
@@ -1345,8 +1345,7 @@ method_of_moments : METHOD_OF_MOMENTS ';'
                     { driver.method_of_moments(); }
                   | METHOD_OF_MOMENTS '(' method_of_moments_options_list ')' ';'
                     { driver.method_of_moments(); }
-                  | METHOD_OF_MOMENTS '(' method_of_moments_options_list ')' symbol_list ';'
-                    { driver.method_of_moments(); }
+                  ;
 
 method_of_moments_options_list : method_of_moments_option COMMA method_of_moments_options_list
                                | method_of_moments_option
diff --git a/src/ParsingDriver.cc b/src/ParsingDriver.cc
index bc063e2e..3448e2a2 100644
--- a/src/ParsingDriver.cc
+++ b/src/ParsingDriver.cc
@@ -3216,8 +3216,7 @@ ParsingDriver::perfect_foresight_solver()
 void
 ParsingDriver::method_of_moments()
 {
-  mod_file->addStatement(make_unique<MethodOfMomentsStatement>(symbol_list, options_list));
-  symbol_list.clear();
+  mod_file->addStatement(make_unique<MethodOfMomentsStatement>(options_list));
   options_list.clear();
 }
 
-- 
GitLab