[phoenix] std::function doesn't work with phoenix ?
When I try to do this is VC++ 2010 : #include <functional> #include <boost\bind.hpp> #include <boost\phoenix.hpp> float Func() { return 1.f; } typedef std::function<float()> F; int main() { F f2 = boost::phoenix::bind(&Func); } It failed to compile, but when I change boost::phoenix::bind to boost::bind it compiled just fine. What's going on ? I thought phoenix::bind and boost::bind is interchangeable.
On 10/25/2012 5:25 PM, Kamil Zubair wrote:
When I try to do this is VC++ 2010 : #include <functional> #include <boost\bind.hpp> #include <boost\phoenix.hpp> float Func() { return 1.f; } typedef std::function<float()> F; int main() { F f2 = boost::phoenix::bind(&Func); } It failed to compile, but when I change boost::phoenix::bind to boost::bind it compiled just fine. What's going on ? I thought phoenix::bind and boost::bind is interchangeable.
Phoenix 2 also works fine. Try #include <boost/spirit/home/phoenix.hpp> Looks like a phoenix-3 problem. Thomas ? Regards, -- Joel de Guzman http://www.boostpro.com http://boost-spirit.com
participants (2)
-
Joel de Guzman
-
Kamil Zubair