|
Boost : |
Subject: [boost] [fusion] boost::fusion::nil bug
From: Jeroen Habraken (vexocide_at_[hidden])
Date: 2011-08-21 06:03:22
Hi,
Clang 2.9 just pointed out what's probably an error in fusion in
boost-trunk, the same one I ran into during the Conversion review
yesterday it seems. Note that GCC doesn't complain even with -Wall
-Wextra -pedantic.
The error:
In file included from fusion.cpp:1:
In file included from boost-trunk/boost/fusion/include/vector.hpp:10:
In file included from boost-trunk/boost/fusion/container/vector.hpp:11:
In file included from boost-trunk/boost/fusion/container/vector/vector10.hpp:15:
In file included from boost-trunk/boost/fusion/sequence/intrinsic/begin.hpp:17:
In file included from
boost-trunk/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp:11:
In file included from
boost-trunk/boost/fusion/iterator/segmented_iterator.hpp:13:
In file included from boost-trunk/boost/fusion/container/list/cons.hpp:14:
In file included from boost-trunk/boost/fusion/sequence/intrinsic/end.hpp:17:
boost-trunk/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp:33:70:
error: invalid use of incomplete type 'fusion::nil'
segmented_end_impl<Sequence, fusion::nil>::call(seq,
fusion::nil()));
^~~~~~~~~~~~~
In file included from fusion.cpp:1:
In file included from boost-trunk/boost/fusion/include/vector.hpp:10:
In file included from boost-trunk/boost/fusion/container/vector.hpp:11:
In file included from boost-trunk/boost/fusion/container/vector/vector10.hpp:15:
In file included from boost-trunk/boost/fusion/sequence/intrinsic/begin.hpp:17:
In file included from
boost-trunk/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp:10:
In file included from
boost-trunk/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp:11:
boost-trunk/boost/fusion/container/list/cons_fwd.hpp:13:12: note:
forward declaration of 'boost::fusion::nil'
struct nil;
^
1 error generated.
The code to reproduce the error:
#include <boost/fusion/include/vector.hpp>
int main(int, char*[]) {
return 0;
}
It seems nil is either only forward-declared or the include with the
declaration is missing.
Kind regards,
Jeroen Habraken
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk