src/AstGen.zig | 50 ++++++++----- src/Module.zig | 46 ++++++++++++ src/Sema.zig | 126 +++++++++++++++++++++----------- src/arch/aarch64/abi.zig | 90 ++++++++++++++++++----- src/arch/x86_64/abi.zig | 13 ++++ src/codegen/llvm.zig | 19 +++-- src/type.zig | 9 +++ src/value.zig | 3 + test/behavior.zig | 5 ++ test/behavior/bugs/12488.zig | 13 ++++ test/behavior/bugs/13112.zig | 7 ++ test/behavior/bugs/13164.zig | 16 ++++ test/behavior/bugs/13171.zig | 16 ++++ test/behavior/bugs/2557.zig | 6 ++ test/behavior/eval.zig | 11 +++ test/behavior/sizeof_and_typeof.zig | 26 ++++++- test/behavior/src.zig | 11 +++ test/c_abi/cfuncs.c | 105 ++++++++++++++++++++++++++ test/c_abi/main.zig | 114 ++++++++++++++++++++++++++++- test/cases/compile_error_in_inline_fn_call_fixed.0.zig | 16 ---- test/cases/compile_error_in_inline_fn_call_fixed.1.zig | 13 ---- test/cases/compile_errors/any_typed_null_to_any_typed_optional.zig | 4 +- test/cases/compile_errors/assign_through_constant_pointer.zig | 2 +- test/cases/compile_errors/assign_through_constant_slice.zig | 2 +- test/cases/compile_errors/assign_to_constant_field.zig | 2 +- test/cases/compile_errors/assign_to_constant_variable.zig | 2 +- test/cases/compile_errors/call method on bound fn referring to var instance.zig | 20 ----- test/cases/compile_errors/call_assigned_to_constant.zig | 4 +- test/cases/compile_errors/callconv_from_global_variable.zig | 9 +++ test/cases/compile_errors/comptime_store_in_comptime_switch_in_runtime_if.zig | 2 +- test/cases/compile_errors/global_var_struct_init_in_comptim_block.zig | 14 ++++ test/cases/compile_errors/implicit_cast_from_f64_to_f32.zig | 2 +- test/cases/compile_errors/non-const_expression_function_call_with_struct_return_value_outside_function.zig | 3 +- test/cases/compile_errors/non-pure_function_returns_type.zig | 3 +- test/cases/compile_errors/non_constant_expression_in_array_size.zig | 3 +- test/cases/compile_errors/reassign_to_slice_parameter.zig | 2 +- test/cases/compile_errors/reference_to_const_data.zig | 8 +- test/cases/compile_errors/write_to_const_global_variable.zig | 2 +- test/cases/extern_variable_has_no_type.0.zig | 3 +- test/cases/recursive_inline_function.0.zig | 13 ---- test/cases/recursive_inline_function.1.zig | 20 ----- test/cases/x86_64-linux/comptime_var.0.zig | 2 +- test/cases/x86_64-linux/comptime_var.1.zig | 2 +- test/cases/x86_64-macos/comptime_var.0.zig | 2 +- test/cases/x86_64-macos/comptime_var.1.zig | 2 +- test/stage2/cbe.zig | 5 +- 46 files changed, 647 insertions(+), 201 deletions(-)