src/AstGen.zig | 4 +- src/Sema.zig | 249 +++++++++++++++++++++++--------- src/Zir.zig | 18 ++- src/print_zir.zig | 2 +- src/type.zig | 22 +++ test/behavior.zig | 1 + test/behavior/bugs/12890.zig | 18 +++ test/behavior/error.zig | 2 +- test/behavior/eval.zig | 14 ++ test/behavior/inline_switch.zig | 13 ++ test/behavior/pointers.zig | 11 ++ test/behavior/sizeof_and_typeof.zig | 4 + test/cases/compile_errors/accessing_runtime_paramter_outside_function_scope.zig | 12 ++ test/cases/compile_errors/fieldParentPtr_on_comptime_field.zig | 16 ++ test/cases/compile_errors/generic_funciton_instantiation_inherits_parent_branch_quota.zig | 30 ++++ test/cases/compile_errors/non_void_error_union_payload_ignored.zig | 25 ++++ test/cases/compile_errors/old_fn_ptr_in_extern_context.zig | 20 +++ test/cases/compile_errors/sema_src_used_after_inline_call.zig | 26 ++++ test/cases/compile_errors/stage1/obj/runtime_value_in_switch_prong.zig | 14 ++ 19 files changed, 424 insertions(+), 77 deletions(-)