diff options
author | dec05eba <dec05eba@protonmail.com> | 2019-12-23 08:57:48 +0100 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2020-07-25 14:37:00 +0200 |
commit | 902a81528b9d2edcf93226a2ca13da6fcc1839e5 (patch) | |
tree | ea868fae662aab61f1caa50b16a8b02fe1e6836b /src/compiler.c | |
parent | 111bd0c7cb4b446c4bfe192b1df82845de17c005 (diff) |
wip: function pointers and other stuff
Diffstat (limited to 'src/compiler.c')
-rw-r--r-- | src/compiler.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/compiler.c b/src/compiler.c index 48ba71e..f9d9355 100644 --- a/src/compiler.c +++ b/src/compiler.c @@ -59,6 +59,7 @@ static CHECK_RESULT int create_default_type_fixed_size(amal_compiler *compiler, static CHECK_RESULT int init_default_types(amal_compiler *compiler) { /* Plain old datatype */ + return_if_error(create_default_type_fixed_size(compiler, "void", 0, &compiler->default_types.void_type, bool_false)); return_if_error(create_default_type_fixed_size(compiler, "i8", 1, &compiler->default_types.i8, bool_true)); return_if_error(create_default_type_fixed_size(compiler, "i16", 2, &compiler->default_types.i16, bool_true)); return_if_error(create_default_type_fixed_size(compiler, "i32", 4, &compiler->default_types.i32, bool_true)); @@ -266,8 +267,10 @@ static CHECK_RESULT int thread_generate_ir(Parser *parser) { amal_log_debug("Generating IR for file: %.*s", parser->tokenizer.code_name.size, parser->tokenizer.code_name.data); result = setjmp(compiler_context.env); - if(result == 0) - scope_generate_ir(&parser->struct_decl.body, &compiler_context); + if(result == 0) { + scope_generate_function_ids(&parser->struct_decl.body, &compiler_context); + scope_generate_functions_ir(&parser->struct_decl.body, &compiler_context); + } return result; } |