id summary reporter owner description type status milestone component version severity resolution keywords cc 9580 "[spirit.lex] self(""state"") += calls a wrong operator +=" Vyacheslav Andrejev Hartmut Kaiser "This construct {{{ #!cpp this->self(""SOME_STATE"") += someTokenDef; }}} doesn't call {{{ #!cpp template inline lexer_def_& boost::spirit::lex::detail::operator+= (lexer_def_& lexdef, Expr&& xpr) }}} as it should in order for the definition get added to the lexer. Instead this operator {{{ #!cpp template typename boost::proto::detail::enable_binary< deduce_domain , deduce_domain::proto_grammar , boost::mpl::or_, is_extension > , boost::proto::tag::plus_assign , Left const & , Right const & >::type const operator +=(Left &&left, Right &&right) { return boost::proto::detail::make_expr_< boost::proto::tag::plus_assign , deduce_domain , Left const & , Right const & >()(left, right); } }}} is called from boost::proto::exprns_ namespace." Bugs new To Be Determined spirit Boost Development Trunk Problem