Dear all,
#include <boost/function.hpp> #include <boost/phoenix/core/argument.hpp> #include <boost/phoenix/operator.hpp> #include <iostream> using namespace boost::phoenix::placeholders; expression::argument<1>::type X; int main ( int argc, char *argv[] ) { boost::function<int(int)> f; f = if_else( X == 0, X, X*2 ); std::cout << f(0) << f(12) << std::endl; return 0; } // ---------- end of function main ----------
The error message says 'expression' does not name a type. I've tried to explicitly play with boost::phoenix namespaces, but doesn't work.
Appreciate any help,
Júlio.
P.S.: Boost 1.47 / GCC 4.5