summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2019-03-27 16:06:24 +0100
committerCarlos Garnacho <carlosg@gnome.org>2019-03-27 16:13:55 +0100
commit5587a87c47c36f14ddcaac9e2df84c67897720be (patch)
treeff15be239670029b500f66c9a374e315c2fc4f5d
parentc29c4fd4074b7c82bf24749487af3f1fb87a6451 (diff)
downloadtracker-5587a87c47c36f14ddcaac9e2df84c67897720be.tar.gz
libtracker-data: Handle doubles before other numeric types
Otherwise there are greediness issues as the definition of DECIMAL fits within DOUBLE and wins over it, leaving the exponential part out of the match. Closes: https://gitlab.gnome.org/GNOME/tracker/issues/84
-rw-r--r--src/libtracker-data/tracker-sparql-grammar.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/libtracker-data/tracker-sparql-grammar.h b/src/libtracker-data/tracker-sparql-grammar.h
index d7c578b64..0dbbf2e62 100644
--- a/src/libtracker-data/tracker-sparql-grammar.h
+++ b/src/libtracker-data/tracker-sparql-grammar.h
@@ -569,7 +569,7 @@ static const TrackerGrammarRule rule_BooleanLiteral[] = { OR(helper_BooleanLiter
* TRACKER EXTENSION:
* The terminal PARAMETERIZED_VAR is additionally accepted
*/
-static const TrackerGrammarRule helper_NumericLiteralNegative_or[] = { T(DECIMAL_NEGATIVE), T(DOUBLE_NEGATIVE), T(INTEGER_NEGATIVE), T(PARAMETERIZED_VAR), NIL };
+static const TrackerGrammarRule helper_NumericLiteralNegative_or[] = { T(DOUBLE_NEGATIVE), T(DECIMAL_NEGATIVE), T(INTEGER_NEGATIVE), T(PARAMETERIZED_VAR), NIL };
static const TrackerGrammarRule rule_NumericLiteralNegative[] = { OR(helper_NumericLiteralNegative_or), NIL };
/* NumericLiteralPositive ::= INTEGER_POSITIVE | DECIMAL_POSITIVE | DOUBLE_POSITIVE
@@ -577,7 +577,7 @@ static const TrackerGrammarRule rule_NumericLiteralNegative[] = { OR(helper_Nume
* TRACKER EXTENSION:
* The terminal PARAMETERIZED_VAR is additionally accepted
*/
-static const TrackerGrammarRule helper_NumericLiteralPositive_or[] = { T(DECIMAL_POSITIVE), T(DOUBLE_POSITIVE), T(INTEGER_POSITIVE), T(PARAMETERIZED_VAR), NIL };
+static const TrackerGrammarRule helper_NumericLiteralPositive_or[] = { T(DOUBLE_POSITIVE), T(DECIMAL_POSITIVE), T(INTEGER_POSITIVE), T(PARAMETERIZED_VAR), NIL };
static const TrackerGrammarRule rule_NumericLiteralPositive[] = { OR(helper_NumericLiteralPositive_or), NIL };
/* NumericLiteralUnsigned ::= INTEGER | DECIMAL | DOUBLE
@@ -585,7 +585,7 @@ static const TrackerGrammarRule rule_NumericLiteralPositive[] = { OR(helper_Nume
* TRACKER EXTENSION:
* The terminal PARAMETERIZED_VAR is additionally accepted
*/
-static const TrackerGrammarRule helper_NumericLiteralUnsigned_or[] = { T(DECIMAL), T(DOUBLE), T(INTEGER), T(PARAMETERIZED_VAR), NIL };
+static const TrackerGrammarRule helper_NumericLiteralUnsigned_or[] = { T(DOUBLE), T(DECIMAL), T(INTEGER), T(PARAMETERIZED_VAR), NIL };
static const TrackerGrammarRule rule_NumericLiteralUnsigned[] = { OR(helper_NumericLiteralUnsigned_or), NIL };
/* NumericLiteral ::= NumericLiteralUnsigned | NumericLiteralPositive | NumericLiteralNegative