
Hi all,
Off hand I can't spot the problem: only the indirect cause - that tuple_basic.hpp never gets included. However, there is a simple temporary fix: put #include <utility> as your first include, and everything *seems* to be OK. It is a bug though, I just can't see what it is in fusion that's causing the failure at present.
I'm confused. HEAD does not have the fusion in the spirit directory since it's been accepted into boost. And, proto does not have the op_base.hpp file anymore. What CVS branch are we talking about?
now I finally had the time to test this issue with 1.34.1 RC3 and CVS HEAD. As expected the problem persists in 1.34.1 RC3, no modification of the example I provided before is required. With CVS HEAD there still exists a problem, but the error messages are different. Here is a minimal example for CVS HEAD: -------- START: Test.cpp -------- /* * Originally included from * - boost/xpressive/proto/proto.hpp * -- boost/xpressive/proto/operators.hpp * --- boost/xpressive/proto/make_expr.hpp */ #include <boost/fusion/sequence/intrinsic/at.hpp> -------- END: Test.cpp -------- The circumstances under which the problem occurs are the same as with Boost 1.34.0. The example fails to compile when the Boost.TR1 include directory is present in the include path and precedes the Standard Library include directory/directories. Regards, Kimon