
Hi,
I am new to boost, just trying to use it for the first time. I have a test code which uses Boost and I am trying to get it running on my machine. But I get an error while compilation:
In file included from /usr/include/boost/mpl/or.hpp:43:0, from /usr/include/boost/serialization/smart_cast.hpp:54, from /usr/include/boost/archive/detail/oserializer.hpp:41, from /usr/include/boost/archive/detail/interface_oarchive.hpp:23, from /usr/include/boost/archive/detail/common_oarchive.hpp:22, from /usr/include/boost/archive/basic_text_oarchive.hpp:32, from /usr/include/boost/archive/text_oarchive.hpp:31, from src/main.cc:1207: /usr/include/boost/mpl/aux_/include_preprocessed.hpp:37:90: fatal error: boost/mpl/aux_/preprocessed/gcc/||.hpp: No such file or directory compilation terminated.
It seems that boost/mpl/or.hpp defines: # define BOOST_MPL_PREPROCESSED_HEADER or.hpp and since 'or' is an alternative token for the '||' operator, the preprocessor substitutes '||' for it. I'm not sure whether the preprocessor is supposed to perform this substitution at this stage or not... What version of GCC are you using? I tried with version 4.3 through 4.7, and I do not get this error with them. Regards, Nate