From 515be5ad3a4230a7cd701421c205e34740f0a90c Mon Sep 17 00:00:00 2001 From: sebastien <sebastien@ac1d8469-bf42-47a9-8791-bf33cf982152> Date: Mon, 13 Jul 2009 09:13:42 +0000 Subject: [PATCH] Preprocessor: refactor usage of GNU g++ specific features git-svn-id: https://www.dynare.org/svn/dynare/trunk@2840 ac1d8469-bf42-47a9-8791-bf33cf982152 --- preprocessor/ExprNode.cc | 8 ++++++-- preprocessor/StaticModel.cc | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/preprocessor/ExprNode.cc b/preprocessor/ExprNode.cc index 47d7bc037d..5c799fcc0a 100644 --- a/preprocessor/ExprNode.cc +++ b/preprocessor/ExprNode.cc @@ -21,7 +21,11 @@ #include <iterator> #include <algorithm> -#include <ext/functional> +// For select1st() +#ifdef __GNUC__ +# include <ext/functional> +using namespace __gnu_cxx; +#endif #include <cassert> #include <cmath> @@ -103,7 +107,7 @@ ExprNode::collectModelLocalVariables(set<int> &result) const set<pair<int, int> > symb_ids; collectVariables(eModelLocalVariable, symb_ids); transform(symb_ids.begin(), symb_ids.end(), inserter(result, result.begin()), - __gnu_cxx::select1st<pair<int, int> >()); + select1st<pair<int, int> >()); } void diff --git a/preprocessor/StaticModel.cc b/preprocessor/StaticModel.cc index def06c0b52..439a2abe48 100644 --- a/preprocessor/StaticModel.cc +++ b/preprocessor/StaticModel.cc @@ -26,7 +26,11 @@ #include <functional> #ifdef DEBUG -# include <ext/functional> +// For select2nd() +# ifdef __GNUC__ +# include <ext/functional> +using namespace __gnu_cxx; +# endif #endif #include <boost/graph/adjacency_list.hpp> @@ -320,7 +324,7 @@ StaticModel::computeNormalization() n1++; pair<multimap<int, int>::const_iterator, multimap<int, int>::const_iterator> x = natural_endo2eqs.equal_range(i); - if (find_if(x.first, x.second, compose1(bind2nd(equal_to<int>(), endo2eq[i]), __gnu_cxx::select2nd<multimap<int, int>::value_type>())) == x.second) + if (find_if(x.first, x.second, compose1(bind2nd(equal_to<int>(), endo2eq[i]), select2nd<multimap<int, int>::value_type>())) == x.second) cout << "Natural normalization of variable " << symbol_table.getName(symbol_table.getID(eEndogenous, i)) << " not used." << endl; else -- GitLab