.github/workflows/ci.yaml | 1 + CMakeLists.txt | 47 +- build.zig | 259 +-- ci/x86_64-windows-debug.ps1 | 5 +- ci/x86_64-windows-release.ps1 | 5 +- doc/langref.html.in | 151 +- lib/build_runner.zig | 12 +- lib/compiler_rt/README.md | 1005 +++++---- lib/compiler_rt/atomics.zig | 104 + lib/docs/main.js | 5 +- lib/init-exe/build.zig | 53 +- lib/init-lib/build.zig | 43 +- lib/libc/mingw/misc/strtoimax.c | 5 +- lib/libc/mingw/misc/strtoumax.c | 5 +- lib/libc/mingw/misc/wcstoimax.c | 5 +- lib/libc/mingw/misc/wcstoumax.c | 5 +- lib/std/Build.zig | 1780 +++++++++++++++ lib/std/Build/CheckFileStep.zig | 51 + lib/std/Build/CheckObjectStep.zig | 1024 +++++++++ lib/std/Build/CompileStep.zig | 2053 +++++++++++++++++ lib/std/Build/ConfigHeaderStep.zig | 299 +++ lib/std/Build/EmulatableRunStep.zig | 213 ++ lib/std/Build/FmtStep.zig | 32 + lib/std/Build/InstallArtifactStep.zig | 85 + lib/std/Build/InstallDirStep.zig | 93 + lib/std/Build/InstallFileStep.zig | 40 + lib/std/Build/InstallRawStep.zig | 110 + lib/std/Build/LogStep.zig | 23 + lib/std/Build/OptionsStep.zig | 371 +++ lib/std/Build/RemoveDirStep.zig | 29 + lib/std/Build/RunStep.zig | 376 ++++ lib/std/Build/Step.zig | 97 + lib/std/Build/TranslateCStep.zig | 136 ++ lib/std/Build/WriteFileStep.zig | 115 + lib/std/Thread.zig | 2 +- lib/std/array_hash_map.zig | 3 +- lib/std/bounded_array.zig | 6 +- lib/std/build.zig | 1781 --------------- lib/std/build/CheckFileStep.zig | 53 - lib/std/build/CheckObjectStep.zig | 1026 --------- lib/std/build/ConfigHeaderStep.zig | 288 --- lib/std/build/EmulatableRunStep.zig | 215 -- lib/std/build/FmtStep.zig | 37 - lib/std/build/InstallArtifactStep.zig | 88 - lib/std/build/InstallDirStep.zig | 95 - lib/std/build/InstallFileStep.zig | 42 - lib/std/build/InstallRawStep.zig | 106 - lib/std/build/LibExeObjStep.zig | 2110 ----------------- lib/std/build/LogStep.zig | 25 - lib/std/build/OptionsStep.zig | 365 --- lib/std/build/RemoveDirStep.zig | 31 - lib/std/build/RunStep.zig | 378 ---- lib/std/build/TranslateCStep.zig | 112 - lib/std/build/WriteFileStep.zig | 117 - lib/std/builtin.zig | 5 +- lib/std/c.zig | 3 +- lib/std/c/netbsd.zig | 3 + lib/std/child_process.zig | 4 +- lib/std/cstr.zig | 1 - lib/std/debug.zig | 5 + lib/std/fmt.zig | 11 +- lib/std/fs.zig | 4 +- lib/std/fs/file.zig | 3 +- lib/std/io/fixed_buffer_stream.zig | 25 +- lib/std/json.zig | 3 +- lib/std/json/test.zig | 6 + lib/std/mem.zig | 102 +- lib/std/os.zig | 11 +- lib/std/os/uefi/pool_allocator.zig | 2 +- lib/std/os/windows.zig | 14 +- lib/std/start_windows_tls.zig | 8 +- lib/std/std.zig | 10 +- lib/std/tar.zig | 23 + lib/std/target.zig | 560 ++++- lib/std/testing.zig | 246 ++ lib/std/zig.zig | 1 - lib/std/zig/Ast.zig | 82 +- lib/std/zig/Parse.zig | 3825 +++++++++++++++++++++++++++++++ lib/std/zig/c_translation.zig | 2 +- lib/std/zig/parse.zig | 3852 -------------------------------- lib/std/zig/parser_test.zig | 13 +- lib/std/zig/perf_test.zig | 3 +- lib/std/zig/render.zig | 3 +- lib/test_runner.zig | 2 +- lib/zig.h | 24 + src/AstGen.zig | 39 +- src/Autodoc.zig | 17 +- src/BuiltinFn.zig | 8 + src/Compilation.zig | 4 +- src/Manifest.zig | 499 +++++ src/Module.zig | 111 +- src/Package.zig | 309 +-- src/Sema.zig | 121 +- src/TypedValue.zig | 5 +- src/Zir.zig | 6 + src/arch/aarch64/CodeGen.zig | 318 ++- src/arch/aarch64/Emit.zig | 16 +- src/arch/arm/CodeGen.zig | 146 +- src/arch/riscv64/CodeGen.zig | 56 +- src/arch/sparc64/CodeGen.zig | 45 +- src/arch/wasm/CodeGen.zig | 64 +- src/arch/wasm/Emit.zig | 29 +- src/arch/x86_64/CodeGen.zig | 254 +-- src/arch/x86_64/Emit.zig | 16 +- src/codegen.zig | 189 +- src/codegen/c.zig | 70 +- src/codegen/llvm.zig | 5 +- src/codegen/spirv.zig | 30 +- src/link.zig | 83 +- src/link/C.zig | 4 +- src/link/Coff.zig | 543 +++-- src/link/Coff/Atom.zig | 59 +- src/link/Coff/Relocation.zig | 18 +- src/link/Dwarf.zig | 579 ++--- src/link/Elf.zig | 1298 +++++------ src/link/Elf/Atom.zig | 100 + src/link/MachO.zig | 765 +++---- src/link/MachO/Atom.zig | 92 +- src/link/MachO/DebugSymbols.zig | 12 +- src/link/MachO/Relocation.zig | 16 +- src/link/MachO/load_commands.zig | 2 +- src/link/MachO/zld.zig | 11 +- src/link/Plan9.zig | 249 ++- src/link/SpirV.zig | 18 +- src/link/Wasm.zig | 573 ++--- src/link/Wasm/Atom.zig | 46 +- src/link/Wasm/Object.zig | 15 +- src/main.zig | 35 +- src/mingw.zig | 1 + src/print_zir.zig | 1 + src/translate_c.zig | 5 +- src/type.zig | 631 +----- stage1/zig1.wasm | Bin 2367320 -> 2373912 bytes test/behavior/basic.zig | 20 +- test/behavior/cast.zig | 3 - test/behavior/error.zig | 15 + test/behavior/math.zig | 3 - test/behavior/muladd.zig | 2 - test/behavior/optional.zig | 2 - test/behavior/sizeof_and_typeof.zig | 9 + test/behavior/threadlocal.zig | 18 +- test/cases/compile_errors/assigning_to_struct_or_union_fields_that_are_not_optionals_with_a_function_that_returns_an_optional.zig | 2 +- test/cases/compile_errors/comptime_arg_to_generic_fn_callee_error.zig | 21 + test/cases/compile_errors/comptime_call_of_function_pointer.zig | 10 + test/cases/compile_errors/discarding_error_value.zig | 2 +- test/cases/compile_errors/helpful_return_type_error_message.zig | 4 +- test/cases/compile_errors/ignored_deferred_function_call.zig | 2 +- test/cases/compile_errors/ignored_expression_in_while_continuation.zig | 6 +- test/cases/compile_errors/increase_pointer_alignment_in_ptrCast.zig | 1 + test/cases/compile_errors/inline_call_runtime_value_to_comptime_param.zig | 17 + test/cases/compile_errors/invalid_decltest.zig | 13 + test/cases/compile_errors/invalid_member_of_builtin_enum.zig | 4 +- test/cases/compile_errors/invalid_qualcast.zig | 12 + test/cases/compile_errors/issue_5618_coercion_of_optional_anyopaque_to_anyopaque_must_fail.zig | 2 +- test/cases/compile_errors/ptrCast_discards_const_qualifier.zig | 1 + test/cases/compile_errors/regression_test_2980_base_type_u32_is_not_type_checked_properly_when_assigning_a_value_within_a_struct.zig | 2 +- test/cases/compile_errors/result_location_incompatibility_mismatching_handle_is_ptr.zig | 2 +- test/cases/compile_errors/result_location_incompatibility_mismatching_handle_is_ptr_generic_call.zig | 2 +- test/link/bss/build.zig | 13 +- test/link/common_symbols/build.zig | 19 +- test/link/common_symbols_alignment/build.zig | 21 +- test/link/interdependent_static_c_libs/build.zig | 28 +- test/link/macho/bugs/13056/build.zig | 11 +- test/link/macho/bugs/13457/build.zig | 15 +- test/link/macho/dead_strip/build.zig | 24 +- test/link/macho/dead_strip_dylibs/build.zig | 18 +- test/link/macho/dylib/build.zig | 22 +- test/link/macho/empty/build.zig | 15 +- test/link/macho/entry/build.zig | 13 +- test/link/macho/headerpad/build.zig | 22 +- test/link/macho/linksection/build.zig | 15 +- test/link/macho/needed_framework/build.zig | 12 +- test/link/macho/needed_library/build.zig | 23 +- test/link/macho/objc/build.zig | 13 +- test/link/macho/objcpp/build.zig | 11 +- test/link/macho/pagezero/build.zig | 21 +- test/link/macho/search_strategy/build.zig | 47 +- test/link/macho/stack_size/build.zig | 13 +- test/link/macho/strict_validation/build.zig | 15 +- test/link/macho/tls/build.zig | 22 +- test/link/macho/unwind_info/build.zig | 32 +- test/link/macho/uuid/build.zig | 29 +- test/link/macho/weak_framework/build.zig | 12 +- test/link/macho/weak_library/build.zig | 23 +- test/link/static_lib_as_system_lib/build.zig | 20 +- test/link/wasm/archive/build.zig | 14 +- test/link/wasm/basic-features/build.zig | 20 +- test/link/wasm/bss/build.zig | 14 +- test/link/wasm/export-data/build.zig | 16 +- test/link/wasm/export/build.zig | 33 +- test/link/wasm/extern-mangle/build.zig | 14 +- test/link/wasm/extern/build.zig | 12 +- test/link/wasm/function-table/build.zig | 32 +- test/link/wasm/infer-features/build.zig | 31 +- test/link/wasm/producers/build.zig | 14 +- test/link/wasm/segments/build.zig | 14 +- test/link/wasm/stack_pointer/build.zig | 14 +- test/link/wasm/type/build.zig | 14 +- test/src/compare_output.zig | 36 +- test/src/run_translated_c.zig | 14 +- test/src/translate_c.zig | 12 +- test/standalone/brace_expansion/build.zig | 10 +- test/standalone/c_compiler/build.zig | 23 +- test/standalone/emit_asm_and_bin/build.zig | 10 +- test/standalone/empty_env/build.zig | 11 +- test/standalone/global_linkage/build.zig | 28 +- test/standalone/install_raw_hex/build.zig | 15 +- test/standalone/issue_11595/build.zig | 16 +- test/standalone/issue_12588/build.zig | 14 +- test/standalone/issue_12706/build.zig | 16 +- test/standalone/issue_13030/build.zig | 15 +- test/standalone/issue_339/build.zig | 11 +- test/standalone/issue_5825/build.zig | 23 +- test/standalone/issue_7030/build.zig | 15 +- test/standalone/issue_794/build.zig | 8 +- test/standalone/issue_8550/build.zig | 13 +- test/standalone/issue_9812/build.zig | 10 +- test/standalone/load_dynamic_library/build.zig | 24 +- test/standalone/main_pkg_path/build.zig | 8 +- test/standalone/mix_c_files/build.zig | 16 +- test/standalone/mix_o_files/build.zig | 18 +- test/standalone/options/build.zig | 12 +- test/standalone/pie/build.zig | 10 +- test/standalone/pkg_import/build.zig | 17 +- test/standalone/shared_library/build.zig | 21 +- test/standalone/static_c_lib/build.zig | 19 +- test/standalone/test_runner_path/build.zig | 9 +- test/standalone/use_alias/build.zig | 10 +- test/standalone/windows_spawn/build.zig | 21 +- test/tests.zig | 217 +- test/translate_c.zig | 16 + 231 files changed, 17563 insertions(+), 15987 deletions(-)