summaryrefslogtreecommitdiff
path: root/glcpp.h
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2010-05-25 15:24:59 -0700
committerCarl Worth <cworth@cworth.org>2010-05-25 15:24:59 -0700
commitae6517f4a83981ae363bbbfe439ec23e8deb04b1 (patch)
tree317cb39be3fc40c3a62ff930c4f4566313c09559 /glcpp.h
parent9fb8b7a495c9dc6f9a62cf82300fae5925af92fc (diff)
Implement expansion of object-like macros.
For this we add an "active" string_list_t to the parser. This makes the current expansion_list_t in the parser obsolete, but we don't remove that yet. With this change we can now start passing some actual tests, so we turn on real testing in the test suite again. I expect to implement things more or less in the same order as before, so the test suite now halts on first error. With this change the first 8 tests in the suite pass, (object-like macros with chaining and recursion).
Diffstat (limited to 'glcpp.h')
-rw-r--r--glcpp.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/glcpp.h b/glcpp.h
index 261254a17c..bd599d7301 100644
--- a/glcpp.h
+++ b/glcpp.h
@@ -124,6 +124,7 @@ typedef struct skip_node {
struct glcpp_parser {
yyscan_t scanner;
struct hash_table *defines;
+ string_list_t *active;
expansion_node_t *expansions;
int just_printed_separator;
int need_newline;