Code: Select all
1>------ Build started: Project: Parsers, Configuration: Release Win32 ------
1>Build started 06/09/2014 3:54:00 PM.
1>ClCompile:
1> TechsParser.cpp
1>../../../Boost/include/boost/utility/result_of.hpp(189): error C2976: 'parse::report_error_::result' : too few template arguments
1> c:\users\geoff\desktop\freeorion_vs2010_sdk_sept_2014\freeorion\parse\ReportParseError.h(45) : see declaration of 'parse::report_error_::result'
1> ../../../Boost/include/boost/utility/result_of.hpp(197) : see reference to class template instantiation 'boost::detail::result_of_nested_result<F,FArgs>' being compiled
1> with
1> [
1> F=const parse::report_error_,
1> FArgs=const parse::report_error_ (boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::info &)
1> ]
1> ../../../Boost/include/boost/utility/detail/result_of_iterate.hpp(37) : see reference to class template instantiation 'boost::detail::tr1_result_of_impl<F,FArgs,HasResultType>' being compiled
1> with
1> [
1> F=const parse::report_error_,
1> FArgs=const parse::report_error_ (boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::info &),
1> HasResultType=false
1> ]
1> ../../../Boost/include/boost/utility/detail/result_of_iterate.hpp(160) : see reference to class template instantiation 'boost::tr1_result_of<F>' being compiled
1> with
1> [
1> F=const parse::report_error_ (boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::info &)
1> ]
1> ../../../Boost/include/boost/phoenix/core/detail/preprocessed/function_eval_10.hpp(221) : see reference to class template instantiation 'boost::result_of<F>' being compiled
1> with
1> [
1> F=const parse::report_error_ (boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::lex::lexertl::iterator<boost::spirit::lex::lexertl::functor<parse::token_type,boost::spirit::lex::lexertl::detail::data,std::_String_const_iterator<char,std::char_traits<char>,std::allocator<char>>,boost::mpl::true_>> ,const boost::spirit::info &)
1> ]
1> ../../../Boost/include/boost/utility/result_of.hpp(190) : see reference to class template instantiation 'boost::phoenix::detail::function_eval::result<Sig>' being compiled
1> with
1> [
1> Sig=boost::phoenix::detail::function_eval (const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0> &,const boost::phoenix::actor<boost::spirit::argument<0>> &,const boost::phoenix::actor<boost::spirit::argument<1>> &,const boost::phoenix::actor<boost::spirit::argument<2>> &,const boost::phoenix::actor<boost::spirit::argument<3>> &,boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,const boost::phoenix::default_actions &>)
1> ]
1> ../../../Boost/include/boost/utility/result_of.hpp(197) : see reference to class template instantiation 'boost::detail::result_of_nested_result<F,FArgs>' being compiled
1> with
1> [
1> F=boost::phoenix::detail::function_eval,
1> FArgs=boost::phoenix::detail::function_eval (const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0> &,const boost::phoenix::actor<boost::spirit::argument<0>> &,const boost::phoenix::actor<boost::spirit::argument<1>> &,const boost::phoenix::actor<boost::spirit::argument<2>> &,const boost::phoenix::actor<boost::spirit::argument<3>> &,boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,const boost::phoenix::default_actions &>)
1> ]
1> ../../../Boost/include/boost/utility/detail/result_of_iterate.hpp(37) : see reference to class template instantiation 'boost::detail::tr1_result_of_impl<F,FArgs,HasResultType>' being compiled
1> with
1> [
1> F=boost::phoenix::detail::function_eval,
1> FArgs=boost::phoenix::detail::function_eval (const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0> &,const boost::phoenix::actor<boost::spirit::argument<0>> &,const boost::phoenix::actor<boost::spirit::argument<1>> &,const boost::phoenix::actor<boost::spirit::argument<2>> &,const boost::phoenix::actor<boost::spirit::argument<3>> &,boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,const boost::phoenix::default_actions &>),
1> HasResultType=false
1> ]
1> ../../../Boost/include/boost/utility/detail/result_of_iterate.hpp(160) : see reference to class template instantiation 'boost::tr1_result_of<F>' being compiled
1> with
1> [
1> F=boost::phoenix::detail::function_eval (const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0> &,const boost::phoenix::actor<boost::spirit::argument<0>> &,const boost::phoenix::actor<boost::spirit::argument<1>> &,const boost::phoenix::actor<boost::spirit::argument<2>> &,const boost::phoenix::actor<boost::spirit::argument<3>> &,boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,const boost::phoenix::default_actions &>)
1> ]
1> ../../../Boost/include/boost/phoenix/core/detail/preprocessed/call_10.hpp(166) : see reference to class template instantiation 'boost::result_of<F>' being compiled
1> with
1> [
1> F=boost::phoenix::detail::function_eval (const boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0> &,const boost::phoenix::actor<boost::spirit::argument<0>> &,const boost::phoenix::actor<boost::spirit::argument<1>> &,const boost::phoenix::actor<boost::spirit::argument<2>> &,const boost::phoenix::actor<boost::spirit::argument<3>> &,boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,const boost::phoenix::default_actions &>)
1> ]
1> ../../../Boost/include/boost/phoenix/core/call.hpp(62) : see reference to class template instantiation 'boost::phoenix::detail::call_impl<Fun,Expr,State,Data>' being compiled
1> with
1> [
1> Fun=boost::phoenix::detail::function_eval,
1> Expr=const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5> &,
1> State=boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,
1> Data=const boost::phoenix::default_actions &
1> ]
1> ../../../Boost/include/boost/proto/transform/when.hpp(194) : see reference to class template instantiation 'boost::phoenix::call<Fun>::impl<Expr,State,Data>' being compiled
1> with
1> [
1> Fun=boost::phoenix::detail::function_eval,
1> Expr=const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5> &,
1> State=boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,
1> Data=const boost::phoenix::default_actions &
1> ]
1> ../../../Boost/include/boost/proto/matches.hpp(836) : see reference to class template instantiation 'boost::proto::when<Grammar,PrimitiveTransform>::impl<Expr,State,Data>' being compiled
1> with
1> [
1> Grammar=boost::phoenix::detail::rule::function_eval,
1> PrimitiveTransform=boost::proto::external_transform,
1> Expr=const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5> &,
1> State=boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,
1> Data=const boost::phoenix::default_actions &
1> ]
1> ../../../Boost/include/boost/phoenix/core/meta_grammar.hpp(66) : see reference to class template instantiation 'boost::proto::switch_<Cases>::impl<Expr,State,Data>' being compiled
1> with
1> [
1> Cases=boost::phoenix::meta_grammar,
1> Expr=const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5> &,
1> State=boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,
1> Data=const boost::phoenix::default_actions &
1> ]
1> ../../../Boost/include/boost/phoenix/core/detail/preprocessed/actor_result_of_10.hpp(103) : see reference to class template instantiation 'boost::phoenix::evaluator::impl<Expr,State,Data>' being compiled
1> with
1> [
1> Expr=const boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5> &,
1> State=const boost::phoenix::vector2<boost::phoenix::vector4<const boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>> *,boost::fusion::vector<parse::token_iterator &,const parse::token_iterator &,const parse::token_iterator &,const boost::spirit::info &> &,boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,boost::spirit::qi::error_handler_result &> &,boost::phoenix::default_actions> &,
1> Data=boost::proto::envns_::empty_env
1> ]
1> ../../../Boost/include/boost/spirit/home/qi/nonterminal/error_handler.hpp(115) : see reference to class template instantiation 'boost::phoenix::result_of::actor<Expr,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,Dummy>' being compiled
1> with
1> [
1> Expr=boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>,
1> A0=params &,
1> A1=boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>> &,
1> A2=boost::spirit::qi::error_handler_result &,
1> A3=void,
1> A4=void,
1> A5=void,
1> A6=void,
1> A7=void,
1> A8=void,
1> A9=void,
1> Dummy=void
1> ]
1> ../../../Boost/include/boost/spirit/home/qi/nonterminal/error_handler.hpp(88) : while compiling class template member function 'bool boost::spirit::qi::error_handler<Iterator,Context,Skipper,F,action>::operator ()(Iterator &,const Iterator &,Context &,const Skipper &) const'
1> with
1> [
1> Iterator=parse::token_iterator,
1> Context=boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>>,
1> Skipper=boost::spirit::qi::state_switcher_context<boost::spirit::lex::reference<const boost::spirit::lex::detail::lexer_def_<boost::spirit::lex::lexer<parse::spirit_lexer_base_type>>>,const char *const >,
1> F=boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>>,
1> action=fail
1> ]
1> ../../../Boost/include/boost/spirit/home/qi/nonterminal/error_handler.hpp(163) : see reference to class template instantiation 'boost::spirit::qi::error_handler<Iterator,Context,Skipper,F,action>' being compiled
1> with
1> [
1> Iterator=parse::token_iterator,
1> Context=boost::spirit::context<boost::fusion::cons<boost::spirit::unused_type &,boost::fusion::cons<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> ,boost::fusion::detail::build_cons<boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>,boost::fusion::mpl_iterator<boost::mpl::v_iter<boost::mpl::vector1<boost::multi_index::multi_index_container<const Tech *,boost::multi_index::indexed_by<boost::multi_index::ordered_non_unique<boost::multi_index::tag<TechManager::CategoryIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Category>>,boost::multi_index::ordered_unique<boost::multi_index::tag<TechManager::NameIndex>,boost::multi_index::const_mem_fun<Tech,const std::string &,Tech::Name>>>> >,1>>>::type>>,boost::fusion::vector0<>>,
1> Skipper=boost::spirit::qi::state_switcher_context<boost::spirit::lex::reference<const boost::spirit::lex::detail::lexer_def_<boost::spirit::lex::lexer<parse::spirit_lexer_base_type>>>,const char *const >,
1> F=boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>>,
1> action=fail
1> ]
1> ..\..\parse\TechsParser.cpp(175) : see reference to function template instantiation 'void boost::spirit::qi::on_error<fail,parse::token_iterator,void(TechManager::TechContainer &),parse::skipper_type,boost::spirit::unused_type,boost::phoenix::actor<Expr>>(boost::spirit::qi::rule<Iterator,T1,T2> &,F)' being compiled
1> with
1> [
1> Expr=boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>,
1> Iterator=parse::token_iterator,
1> T1=void (TechManager::TechContainer &),
1> T2=parse::skipper_type,
1> F=boost::phoenix::actor<boost::proto::exprns_::basic_expr<boost::phoenix::detail::tag::function_eval,boost::proto::argsns_::list5<boost::proto::exprns_::basic_expr<boost::proto::tagns_::tag::terminal,boost::proto::argsns_::term<parse::report_error_>,0>,boost::phoenix::actor<boost::spirit::argument<0>>,boost::phoenix::actor<boost::spirit::argument<1>>,boost::phoenix::actor<boost::spirit::argument<2>>,boost::phoenix::actor<boost::spirit::argument<3>>>,5>>
1> ]
1>../../../Boost/include/boost/utility/result_of.hpp(190): error C2955: 'parse::report_error_::result' : use of class template requires template argument list
1> c:\users\geoff\desktop\freeorion_vs2010_sdk_sept_2014\freeorion\parse\ReportParseError.h(45) : see declaration of 'parse::report_error_::result'
1>
1>Build FAILED.
1>
1>Time Elapsed 00:01:10.36
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Code: Select all
qi::on_error<qi::fail>(start, std::cout << phoenix::val("error!") << std::endl);