From 027e6d24d42de32cf32759e64522c8914143e3b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <pawel.kedzia@pwr.wroc.pl>
Date: Tue, 30 Nov 2010 01:05:54 +0100
Subject: [PATCH] Added parentheses for all "general" operator rules
 (string_operator, bool_operator, symset_operator and position_operator).

---
 libwccl/parser/grammar.g | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g
index 14ebc98..e354413 100644
--- a/libwccl/parser/grammar.g
+++ b/libwccl/parser/grammar.g
@@ -198,8 +198,8 @@ parse_position_operator
 //   'a' "a" [] ['a'] ['a', 'b'] ["a"] ["a", "b"] ['a', "b"]
 // Parsing strset literal and returning plain strset value.
 // Returns boost::shared_ptr<StrSet> 
-strset_literal returns 
-	[boost::shared_ptr<StrSet> s_set]
+strset_literal 
+	returns [boost::shared_ptr<StrSet> s_set]
 {
 	s_set.reset(new StrSet());
 }
@@ -488,7 +488,8 @@ symset_operator
 	returns [boost::shared_ptr<Function<TSet> > ret]
 	: ret = symset_var_val   [tagset, vars] 
 	| ret = symset_condition [tagset, vars]
-
+	//
+	| LPAREN ret = symset_operator [tagset, vars] RPAREN
 ;
 
 // ----------------------------------------------------------------------------
@@ -540,6 +541,8 @@ position_operator
 	: ret = position_var_val   [vars]
 	| ret = position_relpos    [tagset, vars]
 	| ret = position_condition [tagset, vars]
+	//
+	| LPAREN ret = position_operator [tagset, vars] RPAREN
 ;
 
 // ----------------------------------------------------------------------------
@@ -609,6 +612,8 @@ string_operator [const Corpus2::Tagset& tagset, Variables& vars]
 	| ret = strset_affix     [tagset, vars] 
 	| ret = strset_var_val   [tagset, vars] 
 	| ret = strset_condition [tagset, vars]
+	//
+	| LPAREN ret = string_operator [tagset, vars] RPAREN
 ;
 
 // ----------------------------------------------------------------------------
@@ -738,6 +743,8 @@ bool_operator
 	| ret = equal_operator  [tagset, vars]
 	| ret = in_operator     [tagset, vars]
 	| ret = inter_operator  [tagset, vars]
+	//
+	| LPAREN ret = bool_operator [tagset, vars] RPAREN
 ;
 
 // ----------------------------------------------------------------------------
-- 
GitLab