summaryrefslogtreecommitdiffstats
path: root/src/parser.y
diff options
context:
space:
mode:
authorDavid Tolnay <dtolnay@gmail.com>2015-09-16 09:49:11 -0700
committerDavid Tolnay <dtolnay@gmail.com>2015-09-16 09:53:42 -0700
commitb52bebfbe844ef379aa8802d30b199b4acee3373 (patch)
tree1fd5a3a108c2eec149ed903577ff1e57f977c24e /src/parser.y
parent1758c1ba742bec8e83a0097e8e267cc7ffd765d9 (diff)
Improve invalid object key error message
Diffstat (limited to 'src/parser.y')
-rw-r--r--src/parser.y9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/parser.y b/src/parser.y
index d57e5c8a..ddc0eb05 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -809,6 +809,10 @@ String ':' Pattern {
} |
'(' Exp ')' ':' Pattern {
$$ = gen_object_matcher($2, $5);
+} |
+error ':' Pattern {
+ FAIL(@$, "May need parentheses around object key");
+ $$ = $3;
}
Keyword:
@@ -903,7 +907,10 @@ IDENT ':' ExpD {
| '(' Exp ')' ':' ExpD {
$$ = gen_dictpair($2, $5);
}
-| '(' error ')' ':' ExpD { $$ = $5; }
+| error ':' ExpD {
+ FAIL(@$, "May need parentheses around object key");
+ $$ = $3;
+ }
%%
int jq_parse(struct locfile* locations, block* answer) {