Eliminate a shift/reduce conflict.
By simply allowing for the argument_list production to be empty rather
than the lower-level argument production to be empty.
diff --git a/glcpp-parse.y b/glcpp-parse.y
index 27b5514..e70b329 100644
--- a/glcpp-parse.y
+++ b/glcpp-parse.y
@@ -149,7 +149,10 @@
;
argument_list:
- argument {
+ /* empty */ {
+ $$ = _argument_list_create (parser);
+ }
+| argument {
$$ = _argument_list_create (parser);
_argument_list_append ($$, $1);
}
@@ -164,8 +167,9 @@
;
argument:
- /* empty */ {
+ word {
$$ = _string_list_create (parser);
+ _string_list_append_item ($$, $1);
}
| argument word {
_string_list_append_item ($1, $2);