CMakeLists.txt | 3 + ci/azure/macos_script | 1 + ci/drone/test_linux_behavior | 9 +- ci/drone/test_linux_cases | 5 +- ci/drone/test_linux_misc | 15 +- ci/drone/test_linux_std_Debug | 7 +- ci/drone/test_linux_std_ReleaseFast | 8 +- ci/drone/test_linux_std_ReleaseSafe | 8 +- ci/drone/test_linux_std_ReleaseSmall | 4 +- ci/srht/freebsd_script | 1 + ci/zinc/build_aarch64_macos | 2 +- ci/zinc/linux_test_stage3_debug | 3 +- ci/zinc/linux_test_stage3_release | 6 +- lib/std/coff.zig | 335 +++-- lib/std/rand.zig | 2 +- lib/std/rand/test.zig | 2 +- lib/std/start.zig | 2 - src/AstGen.zig | 33 +- src/Autodoc.zig | 2 +- src/Compilation.zig | 37 +- src/Module.zig | 11 +- src/Sema.zig | 175 ++- src/Zir.zig | 15 +- src/arch/aarch64/CodeGen.zig | 16 +- src/arch/arm/CodeGen.zig | 14 +- src/arch/riscv64/CodeGen.zig | 16 +- src/arch/x86_64/CodeGen.zig | 66 +- src/arch/x86_64/Emit.zig | 40 +- src/arch/x86_64/Mir.zig | 13 +- src/codegen/llvm.zig | 137 +- src/link.zig | 13 +- src/link/Coff.zig | 2433 ++++++++++++++++---------------- src/link/Coff/Atom.zig | 110 ++ src/link/Coff/Object.zig | 12 + src/link/Coff/lld.zig | 602 ++++++++ src/link/MachO.zig | 3 +- src/link/MachO/DebugSymbols.zig | 1 - src/link/Wasm.zig | 21 +- src/link/strtab.zig | 4 + src/main.zig | 6 +- src/mingw.zig | 8 +- src/print_zir.zig | 11 +- src/target.zig | 114 +- src/type.zig | 4 + test/behavior/call.zig | 68 + test/behavior/cast.zig | 1 + test/behavior/union.zig | 28 + test/c_abi/cfuncs.c | 6 + test/c_abi/main.zig | 11 + test/cases/aarch64-macos/hello_world_with_updates.0.zig | 2 +- test/cases/compile_errors/invalid_tail_call.zig | 12 + test/cases/compile_errors/non-comptime-parameter-used-as-array-size.zig | 16 + test/cases/compile_errors/runtime_to_comptime_num.zig | 31 + test/cases/compile_errors/shifting_without_int_type_or_comptime_known.zig | 23 + test/cases/compile_errors/stage1/obj/shifting_without_int_type_or_comptime_known.zig | 9 - test/cases/taill_call_noreturn.zig | 18 + test/cases/x86_64-linux/hello_world_with_updates.0.zig | 2 +- test/cases/x86_64-macos/hello_world_with_updates.0.zig | 2 +- 58 files changed, 2924 insertions(+), 1635 deletions(-)