[mpl] include order matters for set and map

The following simple code: #include <boost/mpl/map.hpp> #include <boost/mpl/set.hpp> #include <boost/mpl/pair.hpp> using namespace boost; int main(int argc, char* argv[]) { typedef mpl::map< mpl::pair<int, double> > my_map; return 0; } compiles fine. But if swap the order of #include <boost/mpl/map.hpp> and #include <boost/mpl/set.hpp> then it doesn't compile any more (MSVC 7.1). Yuval

Yuval Ronen <ronen_yuval@yahoo.com> writes:
The following simple code:
#include <boost/mpl/map.hpp> #include <boost/mpl/set.hpp> #include <boost/mpl/pair.hpp>
using namespace boost;
int main(int argc, char* argv[]) { typedef mpl::map< mpl::pair<int, double> > my_map; return 0; }
compiles fine. But if swap the order of
#include <boost/mpl/map.hpp>
and
#include <boost/mpl/set.hpp>
then it doesn't compile any more (MSVC 7.1).
Are you testing the Boost CVS, RC_1_34_0, or the 1.33.1 release? We have fixed lots of map bugs. -- Dave Abrahams Boost Consulting www.boost-consulting.com

David Abrahams wrote:
Yuval Ronen <ronen_yuval@yahoo.com> writes:
The following simple code:
#include <boost/mpl/map.hpp> #include <boost/mpl/set.hpp> #include <boost/mpl/pair.hpp>
using namespace boost;
int main(int argc, char* argv[]) { typedef mpl::map< mpl::pair<int, double> > my_map; return 0; }
compiles fine. But if swap the order of
#include <boost/mpl/map.hpp>
and
#include <boost/mpl/set.hpp>
then it doesn't compile any more (MSVC 7.1).
Are you testing the Boost CVS, RC_1_34_0, or the 1.33.1 release? We have fixed lots of map bugs.
The 1.33.1 release.
participants (2)
-
David Abrahams
-
Yuval Ronen