From 86028bba3bd3cc69fc130cfba9937016ac513c53 Mon Sep 17 00:00:00 2001
From: Adam Wardynski <award@.(B-4.4.46a)>
Date: Tue, 19 Apr 2011 16:18:46 +0200
Subject: [PATCH] Add match(m, ann_name) in addition to match(m1, m2,
 ann_name).

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

diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g
index ed4ad95..857d405 100644
--- a/libwccl/parser/grammar.g
+++ b/libwccl/parser/grammar.g
@@ -1950,16 +1950,21 @@ match_mark_action
 }
 	: "mark" LPAREN 
 			match_from = match_fit[tagset, vars] COMMA
-			match_to   = match_fit[tagset, vars] COMMA
+			(match_to  = match_fit[tagset, vars] COMMA) ?
 			annotation_name : STRING
 		RPAREN {
-			m_act.reset(
-				new MarkMatch(
-					match_from, 
-					match_to, 
-					((antlr::Token*)annotation_name)->getText()
-				)
-			);
+			if (!match_to) {
+				m_act.reset(
+					new MarkMatch(
+						match_from,
+						((antlr::Token*)annotation_name)->getText()));
+			} else {
+				m_act.reset(
+					new MarkMatch(
+						match_from,
+						match_to,
+						((antlr::Token*)annotation_name)->getText()));
+			}
 		}
 ;
 
-- 
GitLab