The following code does not compile using gcc 3.4.3. I tried it with the
same results using 1.32 and 1.33. Reversing the order of the #includes
fixes the problem.
Is this a known order dependency? If so, I couldn't find it documented
anywhere.
#include
#include
int main()
{
return 0;
}
Compiler output:
In file included from
/usr/local/include/boost-1_33/boost/mpl/map/aux_/begin_end_impl.hpp:20,
from
/usr/local/include/boost-1_33/boost/mpl/map/map0.hpp:30,
from
/usr/local/include/boost-1_33/boost/mpl/map/map10.hpp:19,
from
/usr/local/include/boost-1_33/boost/mpl/map/map20.hpp:19,
from /usr/local/include/boost-1_33/boost/mpl/map.hpp:36,
from test.cpp:2:
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:41: error:
wrong number of template arguments (2, should be 1)
/usr/local/include/boost-1_33/boost/mpl/void.hpp:37: error: provided for
`template<class T> struct boost::mpl::is_void_'
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:41: error:
`type' is not a member of `<declaration error>'
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:41: error:
`type' is not a member of `<declaration error>'
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:42: error:
template argument 1 is invalid
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:44: error:
expected `{' before '>' token
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:44: error:
expected unqualified-id before '>' token
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:44: error:
expected `;' before '>' token
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:62: error:
expected nested-name-specifier before "item_by_order"
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:62: error:
ISO C++ forbids declaration of `item_by_order' with no type
/usr/local/include/boost-1_33/boost/mpl/map/aux_/iterator.hpp:62: error:
expected `;' before '<' token