lib/std/zig/AstGen.zig | 6 +- lib/std/zig/Zir.zig | 8 ++ src/Compilation.zig | 10 +- src/InternPool.zig | 2 +- src/Sema.zig | 236 +++++++++++++++++++++++--------- src/Zcu.zig | 2 + src/print_zir.zig | 1 + test/behavior/cast.zig | 16 +++ test/behavior/error.zig | 32 ++++- test/behavior/eval.zig | 11 ++ test/behavior/fn.zig | 17 +++ test/behavior/generics.zig | 16 +++ test/behavior/slice.zig | 13 ++ test/behavior/type_info.zig | 9 ++ test/behavior/union.zig | 16 +++ test/cases/compile_errors/for_comptime_array_pointer.zig | 12 ++ test/cases/compile_errors/struct_depends_on_itself_via_non_initial_field.zig | 12 ++ test/cases/compile_errors/tagName_on_undef_enum_literal.zig | 8 ++ test/incremental/analysis_error_and_syntax_error | 42 ++++++ 19 files changed, 395 insertions(+), 74 deletions(-)