.builds/freebsd.yml | 2 +- .builds/netbsd.yml | 2 +- CMakeLists.txt | 30 +- build.zig | 79 +- ci/azure/linux_script | 21 +- ci/azure/pipelines.yml | 3 +- ci/azure/windows_msvc_script.bat | 2 +- doc/docgen.zig | 13 +- doc/langref.html.in | 452 ++- lib/libc/mingw/stdio/fseeki64.c | 50 + lib/std/Thread.zig | 15 +- lib/std/Thread/Condition.zig | 2 +- lib/std/Thread/Mutex.zig | 177 +- lib/std/array_hash_map.zig | 20 +- lib/std/build.zig | 13 +- lib/std/builtin.zig | 12 +- lib/std/c.zig | 27 + lib/std/c/darwin.zig | 1 + lib/std/c/dragonfly.zig | 1 + lib/std/c/freebsd.zig | 1 + lib/std/c/haiku.zig | 1 + lib/std/c/netbsd.zig | 1 + lib/std/c/openbsd.zig | 1 + lib/std/c/solaris.zig | 1920 ++++++++- lib/std/child_process.zig | 11 +- lib/std/coff.zig | 2 +- lib/std/compress/deflate.zig | 32 +- lib/std/crypto/benchmark.zig | 2 +- lib/std/crypto/blake3.zig | 8 +- lib/std/debug.zig | 56 +- lib/std/dynamic_library.zig | 2 +- lib/std/elf.zig | 97 + lib/std/fifo.zig | 9 +- lib/std/fs.zig | 65 +- lib/std/fs/file.zig | 52 +- lib/std/fs/get_app_data_dir.zig | 2 +- lib/std/fs/test.zig | 2 +- lib/std/hash/benchmark.zig | 2 +- lib/std/hash_map.zig | 18 +- lib/std/heap/general_purpose_allocator.zig | 5 +- lib/std/io/reader.zig | 4 +- lib/std/json.zig | 2 +- lib/std/leb128.zig | 14 +- lib/std/math/big/int.zig | 366 +- lib/std/math/big/int_test.zig | 210 + lib/std/mem.zig | 42 + lib/std/mem/Allocator.zig | 2 +- lib/std/meta.zig | 3 + lib/std/multi_array_list.zig | 4 +- lib/std/net.zig | 2 +- lib/std/net/test.zig | 13 + lib/std/os.zig | 24 + lib/std/os/linux.zig | 16 +- lib/std/os/linux/io_uring.zig | 128 + lib/std/os/linux/ioctl.zig | 56 + lib/std/os/linux/sparc64.zig | 4 + lib/std/os/test.zig | 27 +- lib/std/os/windows/kernel32.zig | 4 + lib/std/os/windows/ws2_32.zig | 1 + lib/std/priority_dequeue.zig | 19 +- lib/std/priority_queue.zig | 17 +- lib/std/process.zig | 3 +- lib/std/special/c.zig | 1217 +----- lib/std/special/c_stage1.zig | 1187 ++++++ lib/std/special/compiler_rt.zig | 1164 +++--- lib/std/special/compiler_rt/extendXfYf2.zig | 12 +- lib/std/special/compiler_rt/stack_probe.zig | 32 +- lib/std/special/test_runner.zig | 18 +- lib/std/start.zig | 17 + lib/std/target.zig | 12 +- lib/std/unicode.zig | 26 +- lib/std/x/os/net.zig | 28 +- lib/std/x/os/socket.zig | 2 +- lib/std/zig/Ast.zig | 110 +- lib/std/zig/c_translation.zig | 1 + lib/std/zig/parse.zig | 146 +- lib/std/zig/parser_test.zig | 62 +- lib/std/zig/render.zig | 72 +- lib/std/zig/string_literal.zig | 2 +- lib/std/zig/system.zig | 23 + lib/std/zig/tokenizer.zig | 116 +- src/Air.zig | 158 +- src/AstGen.zig | 952 +++-- src/BuiltinFn.zig | 58 +- src/Compilation.zig | 194 +- src/Liveness.zig | 38 +- src/Module.zig | 533 ++- src/Package.zig | 17 +- src/Sema.zig | 3622 +++++++++++++---- src/Zir.zig | 2231 ++--------- src/arch/aarch64/bits.zig | 1230 ++++++ src/arch/arm/bits.zig | 1408 +++++++ src/arch/riscv64/bits.zig | 470 +++ src/arch/x86/bits.zig | 123 + src/arch/x86_64/bits.zig | 716 ++++ src/clang_options_data.zig | 9 +- src/codegen.zig | 349 +- src/codegen/aarch64.zig | 1230 ------ src/codegen/arm.zig | 1408 ------- src/codegen/c.zig | 1331 ++++--- src/codegen/llvm.zig | 1242 +++++- src/codegen/llvm/bindings.zig | 334 +- src/codegen/riscv64.zig | 470 --- src/codegen/spirv.zig | 6 +- src/codegen/wasm.zig | 6 +- src/codegen/x86.zig | 123 - src/codegen/x86_64.zig | 716 ---- src/crash_report.zig | 581 +++ src/libc_installation.zig | 1 + src/libcxx.zig | 4 +- src/libtsan.zig | 12 +- src/link.zig | 15 +- src/link/C.zig | 264 +- src/link/C/zig.h | 153 +- src/link/Coff.zig | 44 +- src/link/Elf.zig | 80 +- src/link/MachO.zig | 388 +- src/link/MachO/Atom.zig | 115 +- src/link/MachO/CodeSignature.zig | 2 +- src/link/MachO/DebugSymbols.zig | 16 +- src/link/MachO/Dylib.zig | 2 +- src/link/MachO/Object.zig | 550 +-- src/link/MachO/Trie.zig | 4 +- src/link/MachO/commands.zig | 2 +- src/link/Plan9.zig | 396 +- src/link/Plan9/aout.zig | 19 +- src/link/SpirV.zig | 4 +- src/link/Wasm.zig | 16 +- src/main.zig | 61 +- src/mingw.zig | 3 +- src/musl.zig | 4 +- src/print_air.zig | 82 +- src/print_zir.zig | 2040 ++++++++++ src/stage1/all_types.hpp | 28 +- src/stage1/analyze.cpp | 12 +- src/stage1/analyze.hpp | 2 + src/stage1/astgen.cpp | 76 +- src/stage1/codegen.cpp | 17 +- src/stage1/ir.cpp | 97 +- src/stage1/ir_print.cpp | 12 +- src/stage1/os.hpp | 2 + src/stage1/parser.cpp | 18 +- src/stage1/target.cpp | 5 +- src/stage1/tokenizer.cpp | 84 + src/stage1/tokenizer.hpp | 8 + src/target.zig | 25 + src/translate_c.zig | 2 +- src/translate_c/ast.zig | 21 +- src/type.zig | 557 ++- src/value.zig | 584 ++- src/windows_com.hpp | 2 +- src/zig_clang.cpp | 8 +- src/zig_clang.h | 8 +- src/zig_llvm-ar.cpp | 2 +- src/zig_llvm.cpp | 5 + src/zig_llvm.h | 3 + test/behavior.zig | 81 +- test/behavior/array.zig | 6 + test/behavior/array_stage1.zig | 2 +- test/behavior/atomics.zig | 195 + test/behavior/atomics_stage1.zig | 194 - test/behavior/basic.zig | 18 + test/behavior/bugs/1735.zig | 2 +- test/behavior/eval.zig | 28 + test/behavior/eval_stage1.zig | 30 +- test/behavior/generics.zig | 16 + test/behavior/generics_stage1.zig | 16 - test/behavior/math.zig | 732 +--- test/behavior/math_stage1.zig | 677 ++++ test/behavior/member_func.zig | 103 + test/behavior/misc.zig | 10 - test/behavior/saturating_arithmetic.zig | 59 +- test/behavior/sizeof_and_typeof.zig | 214 - test/behavior/sizeof_and_typeof_stage1.zig | 218 + test/behavior/struct.zig | 920 +---- test/behavior/struct_stage1.zig | 853 ++++ test/behavior/switch.zig | 14 +- test/behavior/this.zig | 9 +- test/behavior/translate_c_macros.zig | 22 - test/behavior/translate_c_macros_stage1.zig | 26 + test/behavior/type.zig | 1 + test/behavior/union.zig | 783 ---- test/behavior/union_stage1.zig | 775 ++++ test/behavior/vector.zig | 2 +- test/behavior/widening.zig | 16 +- test/cases.zig | 14 +- test/compile_errors.zig | 34 +- test/run_translated_c.zig | 4 +- test/stage2/darwin.zig | 6 +- test/stage2/llvm.zig | 180 + test/standalone.zig | 4 + test/standalone/issue_9402/main.zig | 14 + test/standalone/issue_9812/build.zig | 16 + test/standalone/issue_9812/main.zig | 45 + test/standalone/issue_9812/vendor/kuba-zip/miniz.h | 6875 ++++++++++++++++++++++++++++++++ test/standalone/issue_9812/vendor/kuba-zip/zip.c | 1622 ++++++++ test/standalone/issue_9812/vendor/kuba-zip/zip.h | 433 ++ test/tests.zig | 2 +- test/translate_c.zig | 4 +- tools/update_clang_options.zig | 4 + 200 files changed, 34663 insertions(+), 14445 deletions(-)