diff --git a/src/DynamicModel.cc b/src/DynamicModel.cc
index 19d34485228c34cd78a3e7d5a164ad23e0dfb8ce..ff97b296fa43ab06aa1850ccc9b2a2ca45a07dd1 100644
--- a/src/DynamicModel.cc
+++ b/src/DynamicModel.cc
@@ -3040,8 +3040,7 @@ DynamicModel::findUnusedEndogenous()
   for (auto& equation : static_only_equations)
     equation->collectVariables(SymbolType::endogenous, usedEndo);
   set<int> allEndo = symbol_table.getEndogenous();
-  set_difference(allEndo.begin(), allEndo.end(), usedEndo.begin(), usedEndo.end(),
-                 inserter(unusedEndo, unusedEndo.begin()));
+  ranges::set_difference(allEndo, usedEndo, inserter(unusedEndo, unusedEndo.begin()));
   return unusedEndo;
 }
 
@@ -3055,10 +3054,8 @@ DynamicModel::findUnusedExogenous()
     equation->collectVariables(SymbolType::exogenous, usedExo);
   set<int> observedExo = symbol_table.getObservedExogenous();
   set<int> allExo = symbol_table.getExogenous();
-  set_difference(allExo.begin(), allExo.end(), observedExo.begin(), observedExo.end(),
-                 inserter(unobservedExo, unobservedExo.begin()));
-  set_difference(unobservedExo.begin(), unobservedExo.end(), usedExo.begin(), usedExo.end(),
-                 inserter(unusedExo, unusedExo.begin()));
+  ranges::set_difference(allExo, observedExo, inserter(unobservedExo, unobservedExo.begin()));
+  ranges::set_difference(unobservedExo, usedExo, inserter(unusedExo, unusedExo.begin()));
   return unusedExo;
 }
 
diff --git a/src/ModFile.cc b/src/ModFile.cc
index fcc654cb3acf96e91dbc9586a1851e86f0b9c028..4e70c100bf3cae773d556bfbbb7521b39308c49b 100644
--- a/src/ModFile.cc
+++ b/src/ModFile.cc
@@ -376,8 +376,8 @@ ModFile::checkPass(bool nostrict, bool stochastic)
   // Check if some exogenous is not used in the model block, Issue #841
   set<int> unusedExo0 = dynamic_model.findUnusedExogenous();
   set<int> unusedExo;
-  set_difference(unusedExo0.begin(), unusedExo0.end(), mod_file_struct.pac_params.begin(),
-                 mod_file_struct.pac_params.end(), inserter(unusedExo, unusedExo.begin()));
+  ranges::set_difference(unusedExo0, mod_file_struct.pac_params,
+                         inserter(unusedExo, unusedExo.begin()));
   if (unusedExo.size() > 0)
     {
       ostringstream unused_exos;