Boost logo

Boost :

Subject: [boost] [fusion] mpl::is_sequence<fusion::vector<> >::type::value should work right?
From: Dean Michael Berris (mikhailberis_at_[hidden])
Date: 2009-01-12 21:44:22


Hi Guys,

I've tried the following minimal test with the latest in trunk and I
get an error with GCC 4.2.

#include <boost/fusion/container/vector.hpp>
#include <boost/static_assert.hpp>

int main(int argc, char *argv[]) {
  BOOST_STATIC_ASSERT((boost::mpl::is_sequence<boost::fusion::vector<>
>::type::value));
  return EXIT_SUCCESS;
}

The error is pasted below:

/home/dean/boost_trunk/boost/mpl/begin_end.hpp: In instantiation of
'boost::mpl::begin<boost::fusion::vector<boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_> >':
/home/dean/boost_trunk/boost/mpl/is_sequence.hpp:95: instantiated
from 'boost::mpl::is_sequence<boost::fusion::vector<boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_> >'
fusion_is_sequence_test.cpp:5: instantiated from here
/home/dean/boost_trunk/boost/mpl/begin_end.hpp:35: error: invalid use
of incomplete type 'struct
boost::mpl::begin_impl<boost::fusion::fusion_sequence_tag>'
/home/dean/boost_trunk/boost/mpl/begin_end_fwd.hpp:19: error:
declaration of 'struct
boost::mpl::begin_impl<boost::fusion::fusion_sequence_tag>'
fusion_is_sequence_test.cpp: In function 'int main(int, char**)':
fusion_is_sequence_test.cpp:5: error: 'type' is not a member of
'boost::mpl::is_sequence<boost::fusion::vector<boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_,
boost::fusion::void_, boost::fusion::void_, boost::fusion::void_> >'
fusion_is_sequence_test.cpp:5: error: template argument 1 is invalid
fusion_is_sequence_test.cpp:5: error: template argument 1 is invalid

Is this a bug?

HTH

-- 
Dean Michael C. Berris
Software Engineer, Friendster, Inc.

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk