CMakeLists.txt | 60 +- src-self-hosted/main.zig | 48 +- src-self-hosted/module.zig | 23 +- src/analyze.cpp | 6 +- src/analyze.hpp | 2 +- src/bigint.cpp | 10 +- src/codegen.cpp | 4 + src/ir.cpp | 102 +- src/translate_c.cpp | 8 +- std/array_list.zig | 16 +- std/buf_map.zig | 12 +- std/buf_set.zig | 27 +- std/buffer.zig | 4 +- std/hash_map.zig | 15 +- std/index.zig | 2 + std/math/index.zig | 26 + std/math/log2.zig | 7 +- std/segmented_list.zig | 379 +++ std/zig/ast.zig | 810 ++++-- std/zig/bench.zig | 38 + std/zig/index.zig | 8 +- std/zig/parse.zig | 3503 ++++++++++++++++++++++++ std/zig/parser.zig | 4704 -------------------------------- std/zig/parser_test.zig | 188 +- std/zig/render.zig | 1270 +++++++++ std/zig/tokenizer.zig | 148 +- test/cases/math.zig | 25 + test/cases/type_info.zig | 25 +- test/cases/union.zig | 12 + test/translate_c.zig | 21 + 30 files changed, 6232 insertions(+), 5271 deletions(-)