diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index 7daec43e4d4a7849b9ba7731666531b25d9e36b9..aa81f678434398aebfacc17b1c84798c0d865fa0 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -4264,9 +4264,7 @@ DynamicModel::findUnusedExogenous()
   set<int> usedExo, unusedExo, unobservedExo;
   for (int i = 0; i < (int) equations.size(); i++)
     equations[i]->collectVariables(eExogenous, usedExo);
-  for (int i = 0; i < (int) equations.size(); i++)
-    equations[i]->collectVariables(eExogenous, usedExo);
-  set<int> observedExo = symbol_table.getExogenous();
+  set<int> observedExo = symbol_table.getObservedExogenous();
   set<int> allExo = symbol_table.getExogenous();
   set_difference(allExo.begin(), allExo.end(),
                  observedExo.begin(), observedExo.end(),