From c2646ffff5de299624428c7150171103cde105b9 Mon Sep 17 00:00:00 2001 From: Adam Wardynski <award@.(win7-laptop)> Date: Sun, 28 Nov 2010 18:42:52 +0100 Subject: [PATCH] Fix nondeterminism in ? ? operator. --- libwccl/parser/grammar.g | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/libwccl/parser/grammar.g b/libwccl/parser/grammar.g index 9a0128e..9bb435f 100644 --- a/libwccl/parser/grammar.g +++ b/libwccl/parser/grammar.g @@ -521,12 +521,9 @@ condit_sym } } | Q_MARK - (p_true = sym_set_operators [tagset, vars] | - p_true = condit_sym [tagset, vars]) + (p_true = sym_set_operators [tagset, vars]) Q_MARK - (test = logical_predicates [tagset, vars] | - test = condit_bool [tagset, vars]) - { + (test = logical_predicates [tagset, vars]) { op.reset(new Wccl::Conditional<Wccl::TSet>(test, p_true)); } ; @@ -652,12 +649,9 @@ condit_str } } | Q_MARK - (p_true = string_operators [tagset, vars] | - p_true = condit_str [tagset, vars]) + p_true = string_operators [tagset, vars] Q_MARK - (test = logical_predicates [tagset, vars] | - test = condit_bool [tagset, vars]) - { + test = logical_predicates [tagset, vars] { op.reset(new Wccl::Conditional<Wccl::StrSet>(test, p_true)); } ; @@ -900,12 +894,9 @@ condit_bool } } | Q_MARK - (p_true = logical_predicates [tagset, vars] | - p_true = condit_bool [tagset, vars]) + p_true = logical_predicates [tagset, vars] Q_MARK - (test = logical_predicates [tagset, vars] | - test = condit_bool [tagset, vars]) - { + test = logical_predicates [tagset, vars] { op.reset(new Wccl::Conditional<Wccl::Bool>(test, p_true)); } ; -- GitLab