summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/main.c b/src/main.c
index 645656c..c06d83e 100644
--- a/src/main.c
+++ b/src/main.c
@@ -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;