diff options
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/src/main.cpp b/src/main.cpp index a41538f1b..1eed15dbc 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -5,7 +5,6 @@ #include "checker/checker.cpp" // #include "codegen/codegen.cpp" - int main(int argc, char **argv) { if (argc < 2) { gb_printf_err("Please specify a .odin file\n"); @@ -22,24 +21,23 @@ int main(int argc, char **argv) { if (init_parser(&parser)) { defer (destroy_parser(&parser)); - parse_files(&parser, init_filename); - - // print_ast(parser.files[0].declarations, 0); - - Checker checker = {}; - init_checker(&checker, &parser); - defer (destroy_checker(&checker)); + if (parse_files(&parser, init_filename) == ParseFile_None) { + // print_ast(parser.files[0].declarations, 0); - check_parsed_files(&checker); + Checker checker = {}; + init_checker(&checker, &parser); + defer (destroy_checker(&checker)); + check_parsed_files(&checker); #if 0 - Codegen codegen = {}; - if (init_codegen(&codegen, &checker)) { - defer (destroy_codegen(&codegen)); + Codegen codegen = {}; + if (init_codegen(&codegen, &checker)) { + defer (destroy_codegen(&codegen)); - generate_code(&codegen, file_node); - } + generate_code(&codegen, file_node); + } #endif + } } } |