id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 7569,Compile Error using BOOST_FUSION_DEFINE_STRUCT_INLINE with VC10 and GCC <4.5,oswin.krause@…,Joel de Guzman,"As laid out on the mailing list, because of too much class nesting, a few compilers won't get the macro to work with partial template spcialisations of the nested classes. a work around is instead of doing something like this (for example in iterator::deref): {{{ //using (A1, a1)(A2, a2)...(AN, an) as struct arguments typedef A1 t1_type; typedef A2 t2_type; ... t1_type& t1;//linked to a1 t2_type& t2;//linked to a2 ... template struct deref{}; template<> struct deref<1>{ typedef t1_type& type; type call(Sequence& seq){ return seq.t1; } }; }}} use a fusion vector to get rid of the partial template specialisation {{{ typedef boost::fusion::vector t_seq; t_seq t;//tied to a1...an template struct deref{ typedef result_of::at_c type; type call(Sequence& seq){ return at_c(seq.t); } }; }}} ",Bugs,closed,To Be Determined,fusion,Boost 1.51.0,Problem,fixed,,