In file included from /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/vector10.hpp:62:0, from /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/vector_fwd.hpp:14, from /home/falcou/Documents/dev/boost-trunk/boost/fusion/mpl/detail/clear.hpp:10, from /home/falcou/Documents/dev/boost-trunk/boost/fusion/mpl/clear.hpp:12, from /home/falcou/Documents/dev/boost-trunk/boost/fusion/mpl.hpp:17, from /home/falcou/Documents/dev/boost-trunk/boost/fusion/include/mpl.hpp:11, from ref_vector.cpp:3: /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp: In static member function ‘static boost::fusion::vector_data3 boost::fusion::vector_data3::init_from_sequence(const Sequence&) [with Sequence = foo, T0 = double&, T1 = float&, T2 = short int&, boost::fusion::vector_data3 = boost::fusion::vector_data3]’: /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:236:59: instantiated from ‘boost::fusion::vector3::vector3(const Sequence&) [with Sequence = foo, T0 = double&, T1 = float&, T2 = short int&]’ ref_vector.cpp:32:51: instantiated from ‘composite_reference::composite_reference(T&) [with T = foo]’ ref_vector.cpp:51:35: instantiated from here /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:207:48: error: no matching function for call to ‘boost::fusion::vector_data3::vector_data3(const double&, const float&, const short int&)’ /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:207:48: note: candidates are: /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:191:9: note: boost::fusion::vector_data3::vector_data3(const boost::fusion::vector_data3&) [with T0 = double&, T1 = float&, T2 = short int&, boost::fusion::vector_data3 = boost::fusion::vector_data3] /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:191:9: note: candidate expects 1 argument, 3 provided /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:188:9: note: boost::fusion::vector_data3::vector_data3(typename boost::fusion::detail::call_param::type, typename boost::fusion::detail::call_param::type, typename boost::fusion::detail::call_param::type) [with T0 = double&, T1 = float&, T2 = short int&, typename boost::fusion::detail::call_param::type = double&, typename boost::fusion::detail::call_param::type = float&, typename boost::fusion::detail::call_param::type = short int&] /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:188:9: note: no known conversion for argument 1 from ‘const double’ to ‘double&’ /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:186:9: note: boost::fusion::vector_data3::vector_data3() [with T0 = double&, T1 = float&, T2 = short int&] /home/falcou/Documents/dev/boost-trunk/boost/fusion/container/vector/detail/preprocessed/vector10.hpp:186:9: note: candidate expects 0 arguments, 3 provided