У меня есть следующая грамматика:Проблемы повышения дух осуждается
#include <boost/spirit.hpp>
struct point_grammar
: public boost::spirit::grammar<point_grammar>
{
template <typename Scanner>
struct definition
{
boost::spirit::rule<Scanner> E, S, V;
definition(const point_grammar &self)
{
using namespace boost::spirit;
E = S >> V;
S = '@' >> +(~ch_p('@') - V);
V = str_p("[email protected]") | str_p("[email protected]");
}
const boost::spirit::rule<Scanner> &start()
{
return E;
}
};
};
Когда я компилирую, компилятор показать мне следующее предупреждение:
/usr/include/boost/spirit.hpp:18:4: warning: "This header is deprecated. Please use: boost/spirit/include/classic.hpp"
Но при изменении #include для подъема/духа /include/classic.hpp, у меня есть следующая ошибка:
(expected template-name before ‘<’ token) in the line where is: : public boost::spirit::grammar.
Что я могу сделать?