Like previous fix, but for object-like macros (and add a test).
The support for an object-like amcro within a macro-invocation
argument was also implemented at one level too high in the
grammar. Fortunately, this is a very simple fix.
diff --git a/glcpp-parse.y b/glcpp-parse.y
index 400f138..647532f 100644
--- a/glcpp-parse.y
+++ b/glcpp-parse.y
@@ -169,9 +169,6 @@
$$ = _string_list_create (parser);
_string_list_append_item ($$, $1);
}
-| macro {
- $$ = _string_list_create (parser);
- }
| argument argument_word {
_string_list_append_item ($1, $2);
talloc_free ($2);
@@ -189,6 +186,7 @@
IDENTIFIER { $$ = $1; }
| TOKEN { $$ = $1; }
| FUNC_MACRO { $$ = $1; }
+| macro { $$ = xtalloc_strdup (parser, ""); }
;