doc/langref.html.in | 113 ++++++++- lib/std/builtin.zig | 33 +-- lib/std/zig/ast.zig | 21 +- lib/std/zig/parse.zig | 52 ++-- lib/std/zig/parser_test.zig | 17 ++ lib/std/zig/render.zig | 57 +++-- src/all_types.hpp | 20 +- src/analyze.cpp | 131 +++++++--- src/analyze.hpp | 2 +- src/ast_render.cpp | 4 +- src/ir.cpp | 422 +++++++++++++++++++++++--------- src/ir_print.cpp | 8 +- src/parser.cpp | 26 +- test/compile_errors.zig | 21 +- test/stage1/behavior/array.zig | 14 ++ test/stage1/behavior/async_fn.zig | 4 +- test/stage1/behavior/struct.zig | 59 +++++ test/stage1/behavior/union.zig | 22 ++ 18 files changed, 783 insertions(+), 243 deletions(-)