Aleksey, > It might be possible to fix it, but it will require some work. Let > me know if it's important for you, and I'll move it up in my TODO list.
Well, it is not that important since mpl::is_sequence<> is only used to provide some syntactic sugar. I could just as well tell my users that they always have to specify an mpl::list containing a single type instead of a type under MSVC... Thanks, Andreas P.S. While making my first serious steps with mpl yesterday, I ran into some weird errors while trying to compile the following with MSVC 7.0. Could this also be a limitation of my platform? Am I using some functions that are a problem for MSVC, or am I just missing something? #include <boost/mpl/placeholder.hpp> #include <boost/mpl/apply.hpp> #include <boost/mpl/list.hpp> #include <boost/mpl/transform.hpp> template< class Event > class event_handler { protected: event_handler() {} ~event_handler() {} private: virtual bool handle_event( const Event & theEvent ) = 0; }; template< class Derived, class Event, class Destination > class transition_handler : public event_handler< Event > { private: virtual bool handle_event( const Event & ) { /* */ } }; template< class Event, class Destination > struct transition { template< class Derived > struct apply { typedef transition_handler< Derived, Event, Destination > type; }; }; class Paused {}; class Running {}; class EvPause {}; // Since I can write this: typedef boost::mpl::apply< transition< EvPause, Paused >, Running >::type handler1; // I should be able to write the following, or am I missing something? // Does not compile under MSVC7.0 using namespace boost::mpl::placeholder; typedef boost::mpl::list< transition< EvPause, Paused > > trans_list; typedef boost::mpl::transform< trans_list, boost::mpl::apply< _, Running > >::type handler_list; typedef boost::mpl::front< handler_list >::type handler2; int main() { // this is just to see the type in the debugger handler1 * pHandler1 = 0; pHandler1; handler2 * pHandler2 = 0; pHandler2; return 0; } _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost