build.zig | 1 + doc/docgen.zig | 44 ++++++-- doc/langref.html.in | 34 ++++-- src-self-hosted/parser.zig | 2 +- src-self-hosted/tokenizer.zig | 2 - src/all_types.hpp | 12 +++ src/analyze.cpp | 154 +++++++++++++++++++------- src/codegen.cpp | 186 ++++++++++++++++++++++++++++++-- src/ir.cpp | 55 ++++++++++ src/ir_print.cpp | 9 ++ src/parser.cpp | 8 +- src/tokenizer.cpp | 2 - src/tokenizer.hpp | 1 - std/os/index.zig | 6 +- std/special/builtin.zig | 3 +- std/special/compiler_rt/index.zig | 3 +- std/special/panic.zig | 3 +- test/cases/misc.zig | 9 ++ test/compile_errors.zig | 27 ++++- test/gen_h.zig | 53 +++++++++ test/tests.zig | 151 +++++++++++++++++++++++++- 21 files changed, 682 insertions(+), 83 deletions(-)