diff options
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 10 |
1 files changed, 9 insertions, 1 deletions
@@ -33,7 +33,7 @@ #include "parser.h" #include "parser/ast.h" -static const char *src = "void test();\nint main();"; +static const char *src = "int x;\nvoid test();\nint main();\n"; static void print_func(struct ast_node *func) @@ -42,6 +42,12 @@ print_func(struct ast_node *func) } static void +print_var(struct ast_node *var) +{ + log_debug("found variable \"%.*s\" (type %s)\n", var->name_len, var->name, var->type->name); +} + +static void print_syms(struct hashmap *syms) { struct list *list; @@ -55,6 +61,8 @@ print_syms(struct hashmap *syms) while (node != (struct ast_node *)list) { if (node->kind == NOK_FUNCTION) { print_func(node); + } else if (node->kind == NOK_VARIABLE) { + print_var(node); } node = (struct ast_node *)node->hashmap_entry.list_entry.next; |