summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2010-05-17 10:34:29 -0700
committerCarl Worth <cworth@cworth.org>2010-05-17 10:34:29 -0700
commitacf87bc03411c4d9b818a346bc9dad858b0a2407 (patch)
tree441c45371e0dfc8f7098cbdeed1d182f138fa0c5
parent420d05a15b90658680b87b4d83b092768590319a (diff)
Fix bug (and add test) for a function-like-macro appearing as a non-macro.
That is, when a function-like macro appears in the content without parentheses it should be accepted and passed on through, (previously the parser was regarding this as a syntax error).
-rw-r--r--glcpp-parse.y4
-rw-r--r--tests/025-func-macro-as-non-macro.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/glcpp-parse.y b/glcpp-parse.y
index 16d2a28a00..6f158d9139 100644
--- a/glcpp-parse.y
+++ b/glcpp-parse.y
@@ -133,6 +133,10 @@ content:
printf ("%s", $1);
talloc_free ($1);
}
+| FUNC_MACRO {
+ printf ("%s", $1);
+ talloc_free ($1);
+ }
| macro {
_print_string_list ($1);
}
diff --git a/tests/025-func-macro-as-non-macro.c b/tests/025-func-macro-as-non-macro.c
new file mode 100644
index 0000000000..3dbe026d9d
--- /dev/null
+++ b/tests/025-func-macro-as-non-macro.c
@@ -0,0 +1,2 @@
+#define foo(bar) bar
+foo