CMakeLists.txt | 8 +- README.md | 4 +- doc/vim/syntax/zig.vim | 17 ++- example/hello.zig | 12 -- example/hello_world/hello.zig | 12 ++ example/mathtest.zig | 6 - example/multiple_files/foo.zig | 5 + example/multiple_files/libc.zig | 5 + example/multiple_files/main.zig | 9 ++ example/shared_library/mathtest.zig | 6 + example/shared_library/test.c | 7 + src/analyze.cpp | 177 +++++++++++----------- src/analyze.hpp | 3 +- src/codegen.cpp | 258 ++++++++++++++++++++++++++------ src/codegen.hpp | 11 +- src/error.cpp | 1 + src/error.hpp | 1 + src/main.cpp | 170 +++++++-------------- src/os.cpp | 55 ++++++- src/os.hpp | 9 ++ src/parser.cpp | 42 +++++- src/parser.hpp | 7 + src/semantic_info.hpp | 37 +++-- src/tokenizer.cpp | 3 + src/tokenizer.hpp | 1 + test/run_tests.cpp | 2 + 26 files changed, 562 insertions(+), 306 deletions(-)