src/Module.zig | 8 ++- src/Sema.zig | 98 ++++++++++++++++++-------- src/codegen/llvm.zig | 121 +++++++++++++++++++++++++++++--- src/codegen/llvm/bindings.zig | 4 +- src/main.zig | 6 +- src/print_air.zig | 6 +- src/print_zir.zig | 18 ++++- src/type.zig | 81 ++++++++++++--------- src/value.zig | 12 +++- src/zig_llvm.cpp | 30 ++++++-- src/zig_llvm.h | 2 + test/behavior/basic.zig | 9 +++ test/behavior/cast.zig | 8 +++ test/behavior/type_info.zig | 7 ++ test/c_abi/cfuncs.c | 38 ++++++++++ test/c_abi/main.zig | 46 +++++++++++- test/cases/compile_errors/array_init_invalid_elem_count.zig | 10 +++ test/cases/compile_errors/global_variable_stored_in_global_const.zig | 12 ++++ test/cases/compile_errors/inttoptr_non_ptr_type.zig | 9 +++ test/cases/compile_errors/missing_struct_field_in_fn_called_at_comptime.zig | 18 +++++ 20 files changed, 454 insertions(+), 89 deletions(-)