diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g index 998e823e330625a7131e946742465a924a79acad..376de76f7c442bc3b23bcd5effa3d3b4cad3552a 100644 --- a/libwccl/parser/grammar.g +++ b/libwccl/parser/grammar.g @@ -248,7 +248,7 @@ parse_match_rule returns [boost::shared_ptr<Expression> ret_match] { Variables vars; - vars.get_put<Match>("$m:_M"); + vars.get_put<Match>("_M"); } : ret_match = match_rule_operator[tagset, vars] ; @@ -644,7 +644,7 @@ symset_operator [const Corpus2::Tagset& tagset, Variables& vars] returns [boost::shared_ptr<Function<TSet> > ret] : ret = symset_condition [tagset, vars] - | (SYMBOL LBRACKET) => (ret = symset_getsymbol [tagset, vars]) + | {LA(1)==SYMBOL && LA(2)==LBRACKET}? (ret = symset_getsymbol [tagset, vars]) | ret = symset_var_val [tagset, vars] | ret = symset_class [tagset, vars] | ret = symset_range [tagset, vars] @@ -1718,7 +1718,7 @@ match_apply_operator [const Corpus2::Tagset& tagset, Variables& vars] returns [boost::shared_ptr<ApplyOperator> ret_op] { - VariableAccessor<Match> matches = vars.create_accessor<Match>("$m:_M");; + VariableAccessor<Match> matches = vars.create_accessor<Match>("_M");; boost::shared_ptr<const MatchOperator> match_op; boost::shared_ptr<std::vector<boost::shared_ptr<MatchAction> > > actions; boost::shared_ptr<std::vector<boost::shared_ptr<Function<Bool> > > > conditions;