CMakeLists.txt | 4 +- build.zig | 2 +- doc/langref.html.in | 150 ++--- lib/compiler_rt.zig | 4 +- lib/compiler_rt/aarch64_outline_atomics.zig | 2 +- lib/compiler_rt/atomics.zig | 22 +- lib/compiler_rt/clear_cache.zig | 2 +- lib/compiler_rt/cmpdf2.zig | 8 +- lib/compiler_rt/cmphf2.zig | 2 +- lib/compiler_rt/cmpsf2.zig | 8 +- lib/compiler_rt/cmptf2.zig | 16 +- lib/compiler_rt/cmpxf2.zig | 2 +- lib/compiler_rt/comparef.zig | 4 +- lib/compiler_rt/divdf3.zig | 4 +- lib/compiler_rt/divsf3.zig | 4 +- lib/compiler_rt/divtf3.zig | 4 +- lib/compiler_rt/divxf3.zig | 2 +- lib/compiler_rt/exp.zig | 8 +- lib/compiler_rt/exp2.zig | 4 +- lib/compiler_rt/fixdfdi.zig | 6 +- lib/compiler_rt/fixdfsi.zig | 6 +- lib/compiler_rt/fixdfti.zig | 6 +- lib/compiler_rt/fixhfdi.zig | 4 +- lib/compiler_rt/fixhfsi.zig | 4 +- lib/compiler_rt/fixhfti.zig | 6 +- lib/compiler_rt/fixsfdi.zig | 6 +- lib/compiler_rt/fixsfsi.zig | 6 +- lib/compiler_rt/fixsfti.zig | 6 +- lib/compiler_rt/fixtfdi.zig | 6 +- lib/compiler_rt/fixtfsi.zig | 6 +- lib/compiler_rt/fixtfti.zig | 6 +- lib/compiler_rt/fixunsdfdi.zig | 6 +- lib/compiler_rt/fixunsdfsi.zig | 6 +- lib/compiler_rt/fixunsdfti.zig | 6 +- lib/compiler_rt/fixunshfdi.zig | 4 +- lib/compiler_rt/fixunshfsi.zig | 4 +- lib/compiler_rt/fixunshfti.zig | 6 +- lib/compiler_rt/fixunssfdi.zig | 6 +- lib/compiler_rt/fixunssfsi.zig | 6 +- lib/compiler_rt/fixunssfti.zig | 6 +- lib/compiler_rt/fixunstfdi.zig | 6 +- lib/compiler_rt/fixunstfsi.zig | 6 +- lib/compiler_rt/fixunstfti.zig | 6 +- lib/compiler_rt/fixunsxfdi.zig | 4 +- lib/compiler_rt/fixunsxfsi.zig | 4 +- lib/compiler_rt/fixunsxfti.zig | 6 +- lib/compiler_rt/fixxfdi.zig | 4 +- lib/compiler_rt/fixxfsi.zig | 4 +- lib/compiler_rt/fixxfti.zig | 6 +- lib/compiler_rt/float_from_int.zig | 58 ++ lib/compiler_rt/float_from_int_test.zig | 836 ++++++++++++++++++++++++++++ lib/compiler_rt/float_to_int.zig | 55 -- lib/compiler_rt/float_to_int_test.zig | 950 -------------------------------- lib/compiler_rt/floatdidf.zig | 6 +- lib/compiler_rt/floatdihf.zig | 4 +- lib/compiler_rt/floatdisf.zig | 6 +- lib/compiler_rt/floatditf.zig | 6 +- lib/compiler_rt/floatdixf.zig | 4 +- lib/compiler_rt/floatsidf.zig | 6 +- lib/compiler_rt/floatsihf.zig | 4 +- lib/compiler_rt/floatsisf.zig | 6 +- lib/compiler_rt/floatsitf.zig | 6 +- lib/compiler_rt/floatsixf.zig | 4 +- lib/compiler_rt/floattidf.zig | 6 +- lib/compiler_rt/floattihf.zig | 6 +- lib/compiler_rt/floattisf.zig | 6 +- lib/compiler_rt/floattitf.zig | 6 +- lib/compiler_rt/floattixf.zig | 6 +- lib/compiler_rt/floatundidf.zig | 6 +- lib/compiler_rt/floatundihf.zig | 4 +- lib/compiler_rt/floatundisf.zig | 6 +- lib/compiler_rt/floatunditf.zig | 6 +- lib/compiler_rt/floatundixf.zig | 4 +- lib/compiler_rt/floatunsidf.zig | 6 +- lib/compiler_rt/floatunsihf.zig | 4 +- lib/compiler_rt/floatunsisf.zig | 6 +- lib/compiler_rt/floatunsitf.zig | 6 +- lib/compiler_rt/floatunsixf.zig | 4 +- lib/compiler_rt/floatuntidf.zig | 6 +- lib/compiler_rt/floatuntihf.zig | 6 +- lib/compiler_rt/floatuntisf.zig | 6 +- lib/compiler_rt/floatuntitf.zig | 6 +- lib/compiler_rt/floatuntixf.zig | 6 +- lib/compiler_rt/gedf2.zig | 6 +- lib/compiler_rt/gehf2.zig | 2 +- lib/compiler_rt/gesf2.zig | 6 +- lib/compiler_rt/getf2.zig | 2 +- lib/compiler_rt/gexf2.zig | 2 +- lib/compiler_rt/int_from_float.zig | 55 ++ lib/compiler_rt/int_from_float_test.zig | 950 ++++++++++++++++++++++++++++++++ lib/compiler_rt/int_to_float.zig | 58 -- lib/compiler_rt/int_to_float_test.zig | 836 ---------------------------- lib/compiler_rt/log.zig | 4 +- lib/compiler_rt/log10.zig | 4 +- lib/compiler_rt/log2.zig | 4 +- lib/compiler_rt/memmove.zig | 2 +- lib/compiler_rt/mulf3.zig | 2 +- lib/compiler_rt/os_version_check.zig | 2 +- lib/compiler_rt/paritydi2_test.zig | 2 +- lib/compiler_rt/paritysi2_test.zig | 2 +- lib/compiler_rt/parityti2_test.zig | 2 +- lib/compiler_rt/rem_pio2.zig | 4 +- lib/compiler_rt/rem_pio2_large.zig | 22 +- lib/compiler_rt/rem_pio2f.zig | 2 +- lib/compiler_rt/trig.zig | 2 +- lib/compiler_rt/truncf.zig | 4 +- lib/docs/main.js | 38 +- lib/std/Build/Step/Run.zig | 6 +- lib/std/RingBuffer.zig | 2 +- lib/std/Thread.zig | 36 +- lib/std/Thread/Condition.zig | 2 +- lib/std/Thread/Futex.zig | 16 +- lib/std/array_hash_map.zig | 2 +- lib/std/atomic/Atomic.zig | 6 +- lib/std/atomic/queue.zig | 6 +- lib/std/bit_set.zig | 8 +- lib/std/c.zig | 2 +- lib/std/c/darwin.zig | 62 +-- lib/std/c/dragonfly.zig | 16 +- lib/std/c/freebsd.zig | 10 +- lib/std/c/haiku.zig | 8 +- lib/std/c/linux.zig | 2 +- lib/std/c/netbsd.zig | 14 +- lib/std/c/openbsd.zig | 12 +- lib/std/c/solaris.zig | 20 +- lib/std/child_process.zig | 6 +- lib/std/coff.zig | 10 +- lib/std/compress/deflate/huffman_bit_writer.zig | 2 +- lib/std/compress/lzma/decode.zig | 4 +- lib/std/compress/lzma/decode/rangecoder.zig | 6 +- lib/std/compress/xz.zig | 2 +- lib/std/compress/xz/block.zig | 4 +- lib/std/compress/zlib.zig | 2 +- lib/std/compress/zstandard/decode/block.zig | 10 +- lib/std/crypto/25519/edwards25519.zig | 18 +- lib/std/crypto/25519/field.zig | 4 +- lib/std/crypto/25519/ristretto255.zig | 12 +- lib/std/crypto/Certificate.zig | 6 +- lib/std/crypto/Certificate/Bundle/macos.zig | 2 +- lib/std/crypto/argon2.zig | 4 +- lib/std/crypto/benchmark.zig | 50 +- lib/std/crypto/ff.zig | 8 +- lib/std/crypto/kyber_d00.zig | 2 +- lib/std/crypto/pcurves/p256.zig | 16 +- lib/std/crypto/pcurves/p384.zig | 16 +- lib/std/crypto/pcurves/secp256k1.zig | 16 +- lib/std/crypto/tls.zig | 12 +- lib/std/crypto/tls/Client.zig | 48 +- lib/std/debug.zig | 30 +- lib/std/dynamic_library.zig | 36 +- lib/std/elf.zig | 4 +- lib/std/enums.zig | 30 +- lib/std/event/channel.zig | 2 +- lib/std/event/lock.zig | 8 +- lib/std/event/loop.zig | 20 +- lib/std/fmt.zig | 32 +- lib/std/fmt/errol.zig | 42 +- lib/std/fmt/parse_float/convert_eisel_lemire.zig | 2 +- lib/std/fmt/parse_float/convert_fast.zig | 4 +- lib/std/fs.zig | 8 +- lib/std/fs/file.zig | 10 +- lib/std/fs/path.zig | 6 +- lib/std/fs/watch.zig | 6 +- lib/std/hash/auto_hash.zig | 12 +- lib/std/hash/benchmark.zig | 8 +- lib/std/hash/crc.zig | 4 +- lib/std/hash_map.zig | 14 +- lib/std/heap.zig | 36 +- lib/std/heap/PageAllocator.zig | 6 +- lib/std/heap/WasmAllocator.zig | 14 +- lib/std/heap/WasmPageAllocator.zig | 16 +- lib/std/heap/arena_allocator.zig | 8 +- lib/std/heap/general_purpose_allocator.zig | 82 +-- lib/std/http.zig | 2 +- lib/std/http/Client.zig | 2 +- lib/std/http/Server.zig | 2 +- lib/std/io.zig | 6 +- lib/std/io/bit_reader.zig | 2 +- lib/std/io/c_writer.zig | 2 +- lib/std/json/static.zig | 2 +- lib/std/leb128.zig | 2 +- lib/std/log.zig | 6 +- lib/std/math.zig | 20 +- lib/std/math/big/int.zig | 18 +- lib/std/math/big/rational.zig | 6 +- lib/std/math/complex/atan.zig | 4 +- lib/std/math/expm1.zig | 8 +- lib/std/math/ilogb.zig | 2 +- lib/std/math/ldexp.zig | 6 +- lib/std/math/log.zig | 2 +- lib/std/math/log10.zig | 2 +- lib/std/math/log1p.zig | 4 +- lib/std/math/pow.zig | 4 +- lib/std/mem.zig | 22 +- lib/std/mem/Allocator.zig | 8 +- lib/std/meta.zig | 12 +- lib/std/meta/trailer_flags.zig | 10 +- lib/std/multi_array_list.zig | 24 +- lib/std/net.zig | 20 +- lib/std/os.zig | 54 +- lib/std/os/linux.zig | 454 +++++++-------- lib/std/os/linux/arm-eabi.zig | 18 +- lib/std/os/linux/arm64.zig | 18 +- lib/std/os/linux/bpf.zig | 68 +-- lib/std/os/linux/bpf/helpers.zig | 282 +++++----- lib/std/os/linux/io_uring.zig | 80 +-- lib/std/os/linux/mips.zig | 22 +- lib/std/os/linux/mips64.zig | 22 +- lib/std/os/linux/powerpc.zig | 16 +- lib/std/os/linux/powerpc64.zig | 16 +- lib/std/os/linux/riscv64.zig | 16 +- lib/std/os/linux/sparc64.zig | 20 +- lib/std/os/linux/start_pie.zig | 10 +- lib/std/os/linux/thumb.zig | 18 +- lib/std/os/linux/tls.zig | 10 +- lib/std/os/linux/vdso.zig | 20 +- lib/std/os/linux/x86.zig | 26 +- lib/std/os/linux/x86_64.zig | 18 +- lib/std/os/plan9.zig | 12 +- lib/std/os/plan9/x86_64.zig | 8 +- lib/std/os/test.zig | 20 +- lib/std/os/uefi/pool_allocator.zig | 4 +- lib/std/os/uefi/protocols/device_path_protocol.zig | 6 +- lib/std/os/windows.zig | 38 +- lib/std/os/windows/user32.zig | 2 +- lib/std/os/windows/ws2_32.zig | 2 +- lib/std/pdb.zig | 2 +- lib/std/process.zig | 8 +- lib/std/rand/benchmark.zig | 4 +- lib/std/rand/test.zig | 12 +- lib/std/simd.zig | 4 +- lib/std/sort.zig | 2 +- lib/std/start.zig | 6 +- lib/std/start_windows_tls.zig | 10 +- lib/std/tar.zig | 4 +- lib/std/target.zig | 24 +- lib/std/target/aarch64.zig | 396 ++++++------- lib/std/target/amdgpu.zig | 292 +++++----- lib/std/target/arc.zig | 2 +- lib/std/target/arm.zig | 394 ++++++------- lib/std/target/avr.zig | 72 +-- lib/std/target/bpf.zig | 6 +- lib/std/target/csky.zig | 126 ++--- lib/std/target/hexagon.zig | 84 +-- lib/std/target/loongarch.zig | 22 +- lib/std/target/m68k.zig | 42 +- lib/std/target/mips.zig | 104 ++-- lib/std/target/msp430.zig | 8 +- lib/std/target/nvptx.zig | 80 +-- lib/std/target/powerpc.zig | 162 +++--- lib/std/target/riscv.zig | 216 ++++---- lib/std/target/s390x.zig | 82 +-- lib/std/target/sparc.zig | 38 +- lib/std/target/spirv.zig | 568 +++++++++---------- lib/std/target/ve.zig | 2 +- lib/std/target/wasm.zig | 24 +- lib/std/target/x86.zig | 324 +++++------ lib/std/target/xtensa.zig | 2 +- lib/std/time/epoch.zig | 4 +- lib/std/treap.zig | 22 +- lib/std/unicode/throughput_test.zig | 4 +- lib/std/valgrind.zig | 40 +- lib/std/valgrind/callgrind.zig | 4 +- lib/std/valgrind/memcheck.zig | 40 +- lib/std/wasm.zig | 20 +- lib/std/zig/Ast.zig | 44 +- lib/std/zig/ErrorBundle.zig | 26 +- lib/std/zig/Parse.zig | 2 +- lib/std/zig/Server.zig | 4 +- lib/std/zig/c_builtins.zig | 12 +- lib/std/zig/c_translation.zig | 44 +- lib/std/zig/number_literal.zig | 6 +- lib/std/zig/parser_test.zig | 4 +- lib/std/zig/perf_test.zig | 6 +- lib/std/zig/render.zig | 22 +- lib/std/zig/system/NativeTargetInfo.zig | 8 +- lib/std/zig/system/arm.zig | 2 +- lib/std/zig/system/windows.zig | 4 +- lib/std/zig/system/x86.zig | 2 +- lib/test_runner.zig | 6 +- src/Air.zig | 228 ++++---- src/AstGen.zig | 348 ++++++------ src/Autodoc.zig | 178 +++--- src/BuiltinFn.zig | 54 +- src/Compilation.zig | 32 +- src/InternPool.zig | 340 ++++++------ src/Liveness.zig | 22 +- src/Liveness/Verify.zig | 10 +- src/Manifest.zig | 8 +- src/Module.zig | 100 ++-- src/Package.zig | 6 +- src/Sema.zig | 324 +++++------ src/TypedValue.zig | 6 +- src/Zir.zig | 282 +++++----- src/arch/aarch64/CodeGen.zig | 34 +- src/arch/aarch64/Emit.zig | 6 +- src/arch/aarch64/bits.zig | 246 ++++----- src/arch/arm/CodeGen.zig | 26 +- src/arch/arm/bits.zig | 52 +- src/arch/riscv64/CodeGen.zig | 24 +- src/arch/riscv64/bits.zig | 2 +- src/arch/sparc64/CodeGen.zig | 26 +- src/arch/sparc64/bits.zig | 72 +-- src/arch/wasm/CodeGen.zig | 36 +- src/arch/wasm/Emit.zig | 16 +- src/arch/wasm/Mir.zig | 4 +- src/arch/x86/bits.zig | 10 +- src/arch/x86_64/CodeGen.zig | 90 +-- src/arch/x86_64/Encoding.zig | 8 +- src/arch/x86_64/Mir.zig | 32 +- src/arch/x86_64/bits.zig | 140 ++--- src/arch/x86_64/encoder.zig | 22 +- src/clang.zig | 2 +- src/codegen.zig | 8 +- src/codegen/c.zig | 30 +- src/codegen/c/type.zig | 10 +- src/codegen/llvm.zig | 100 ++-- src/codegen/llvm/bindings.zig | 2 +- src/codegen/spirv.zig | 32 +- src/codegen/spirv/Assembler.zig | 8 +- src/codegen/spirv/Cache.zig | 60 +- src/codegen/spirv/Module.zig | 14 +- src/codegen/spirv/Section.zig | 24 +- src/crash_report.zig | 12 +- src/libcxx.zig | 8 +- src/link/Coff.zig | 34 +- src/link/Dwarf.zig | 130 ++--- src/link/Elf.zig | 10 +- src/link/MachO/UnwindInfo.zig | 8 +- src/link/MachO/ZldAtom.zig | 14 +- src/link/MachO/dead_strip.zig | 4 +- src/link/MachO/eh_frame.zig | 8 +- src/link/MachO/thunks.zig | 2 +- src/link/MachO/zld.zig | 8 +- src/link/Plan9.zig | 2 +- src/link/Wasm.zig | 70 +-- src/link/Wasm/Object.zig | 16 +- src/link/Wasm/Symbol.zig | 24 +- src/link/Wasm/types.zig | 4 +- src/main.zig | 16 +- src/objcopy.zig | 4 +- src/print_air.zig | 12 +- src/print_zir.zig | 90 +-- src/register_manager.zig | 12 +- src/translate_c.zig | 216 ++++---- src/translate_c/ast.zig | 80 +-- src/type.zig | 16 +- src/value.zig | 60 +- stage1/zig1.wasm | Bin 2489820 -> 2494123 bytes test/behavior.zig | 2 +- test/behavior/align.zig | 14 +- test/behavior/array.zig | 4 +- test/behavior/async_fn.zig | 6 +- test/behavior/bool.zig | 28 +- test/behavior/bugs/10138.zig | 2 +- test/behavior/bugs/12142.zig | 2 +- test/behavior/bugs/12450.zig | 2 +- test/behavior/bugs/12680_other_file.zig | 2 +- test/behavior/bugs/12723.zig | 4 +- test/behavior/bugs/1741.zig | 2 +- test/behavior/bugs/9584.zig | 2 +- test/behavior/builtin_functions_returning_void_or_noreturn.zig | 4 +- test/behavior/call.zig | 4 +- test/behavior/cast.zig | 100 ++-- test/behavior/comptime_memory.zig | 40 +- test/behavior/enum.zig | 60 +- test/behavior/error.zig | 10 +- test/behavior/eval.zig | 2 +- test/behavior/export.zig | 2 +- test/behavior/export_self_referential_type_info.zig | 2 +- test/behavior/floatop.zig | 4 +- test/behavior/fn_in_struct_in_comptime.zig | 4 +- test/behavior/generics.zig | 6 +- test/behavior/inline_switch.zig | 2 +- test/behavior/inttoptr.zig | 48 -- test/behavior/packed-struct.zig | 4 +- test/behavior/pointers.zig | 32 +- test/behavior/ptrfromint.zig | 48 ++ test/behavior/sizeof_and_typeof.zig | 22 +- test/behavior/slice.zig | 14 +- test/behavior/struct.zig | 2 +- test/behavior/switch.zig | 10 +- test/behavior/translate_c_macros.zig | 2 +- test/behavior/type.zig | 10 +- test/behavior/union.zig | 18 +- test/behavior/vector.zig | 2 +- test/c_abi/main.zig | 10 +- test/cases/assert_function.18.zig | 2 +- test/cases/assert_function.7.zig | 2 +- test/cases/assert_function.8.zig | 2 +- test/cases/compile_errors/add_overflow_in_function_evaluation.zig | 4 +- test/cases/compile_errors/addition_with_non_numbers.zig | 8 +- test/cases/compile_errors/address_of_number_literal.zig | 12 +- test/cases/compile_errors/alignment_of_enum_field_specified.zig | 5 +- test/cases/compile_errors/array_concatenation_with_wrong_type.zig | 4 +- test/cases/compile_errors/array_mult_with_number_type.zig | 2 +- test/cases/compile_errors/assign_inline_fn_to_non-comptime_var.zig | 2 +- test/cases/compile_errors/assign_null_to_non-optional_pointer.zig | 4 +- test/cases/compile_errors/assign_through_constant_pointer.zig | 6 +- test/cases/compile_errors/assign_through_constant_slice.zig | 6 +- test/cases/compile_errors/assign_to_constant_field.zig | 6 +- test/cases/compile_errors/async/non_async_function_pointer_passed_to_asyncCall.zig | 2 +- test/cases/compile_errors/async/prevent_bad_implicit_casting_of_anyframe_types.zig | 2 +- test/cases/compile_errors/async/runtime-known_function_called_with_async_keyword.zig | 2 +- test/cases/compile_errors/bad_alignCast_at_comptime.zig | 2 +- test/cases/compile_errors/bad_import.zig | 4 +- test/cases/compile_errors/binary_not_on_number_literal.zig | 4 +- test/cases/compile_errors/bitCast_to_enum_type.zig | 2 +- test/cases/compile_errors/bogus_compile_var.zig | 4 +- test/cases/compile_errors/bogus_method_call_on_slice.zig | 8 +- test/cases/compile_errors/branch_on_undefined_value.zig | 4 +- test/cases/compile_errors/calling_function_with_naked_calling_convention.zig | 2 +- test/cases/compile_errors/calling_var_args_extern_function_passing_array_instead_of_pointer.zig | 8 +- test/cases/compile_errors/cast_unreachable.zig | 4 +- test/cases/compile_errors/casting_bit_offset_pointer_to_regular_pointer.zig | 4 +- test/cases/compile_errors/colliding_invalid_top_level_functions.zig | 4 +- test/cases/compile_errors/compileError_shows_traceback_of_references_that_caused_it.zig | 4 +- test/cases/compile_errors/compile_log_statement_warning_deduplication_in_generic_fn.zig | 8 +- test/cases/compile_errors/compile_time_division_by_zero.zig | 4 +- test/cases/compile_errors/comptime_call_of_function_pointer.zig | 2 +- test/cases/compile_errors/comptime_if_inside_runtime_for.zig | 14 +- test/cases/compile_errors/constant_inside_comptime_function_has_compile_error.zig | 4 +- test/cases/compile_errors/container_init_with_non-type.zig | 4 +- test/cases/compile_errors/control_flow_uses_comptime_var_at_runtime.zig | 2 +- test/cases/compile_errors/dereference_an_array.zig | 4 +- test/cases/compile_errors/direct_struct_loop.zig | 10 +- test/cases/compile_errors/disallow_coercion_from_non-null-terminated_pointer_to_null-terminated_pointer.zig | 2 +- test/cases/compile_errors/division_by_zero.zig | 16 +- test/cases/compile_errors/duplicate-unused_labels.zig | 32 +- test/cases/compile_errors/duplicate_error_value_in_error_set.zig | 2 +- test/cases/compile_errors/duplicate_field_in_struct_value_expression.zig | 8 +- test/cases/compile_errors/embedFile_with_bogus_file.zig | 6 +- test/cases/compile_errors/empty_switch_on_an_integer.zig | 2 +- test/cases/compile_errors/enumFromInt_on_non-exhaustive_enums_checks_int_in_range.zig | 11 + test/cases/compile_errors/enum_in_field_count_range_but_not_matching_tag.zig | 2 +- test/cases/compile_errors/enum_with_declarations_unavailable_for_reify_type.zig | 5 +- test/cases/compile_errors/error_not_handled_in_switch.zig | 6 +- test/cases/compile_errors/error_note_for_function_parameter_incompatibility.zig | 14 +- test/cases/compile_errors/explicitly_casting_non_tag_type_to_enum.zig | 4 +- test/cases/compile_errors/export_function_with_comptime_parameter.zig | 2 +- test/cases/compile_errors/export_with_empty_name_string.zig | 2 +- test/cases/compile_errors/extern_function_pointer_mismatch.zig | 22 +- test/cases/compile_errors/extern_function_with_comptime_parameter.zig | 12 +- test/cases/compile_errors/extern_struct_with_extern-compatible_but_inferred_integer_tag_type.zig | 10 +- test/cases/compile_errors/extern_union_field_missing_type.zig | 2 +- test/cases/compile_errors/extern_union_given_enum_tag_type.zig | 2 +- test/cases/compile_errors/fieldParentPtr-comptime_field_ptr_not_based_on_struct.zig | 9 +- test/cases/compile_errors/fieldParentPtr-comptime_wrong_field_index.zig | 7 +- test/cases/compile_errors/floatToInt_comptime_safety.zig | 17 - test/cases/compile_errors/for.zig | 24 +- test/cases/compile_errors/for_extra_capture.zig | 9 +- test/cases/compile_errors/function_alignment_non_power_of_2.zig | 4 +- test/cases/compile_errors/function_call_assigned_to_incorrect_type.zig | 2 +- test/cases/compile_errors/function_parameter_is_opaque.zig | 10 +- test/cases/compile_errors/function_with_non-extern_non-packed_enum_parameter.zig | 4 +- test/cases/compile_errors/function_with_non-extern_non-packed_struct_parameter.zig | 4 +- test/cases/compile_errors/function_with_non-extern_non-packed_union_parameter.zig | 4 +- test/cases/compile_errors/generic_function_call_assigned_to_incorrect_type.zig | 2 +- test/cases/compile_errors/generic_function_instance_with_non-constant_expression.zig | 12 +- test/cases/compile_errors/generic_instantiation_failure_in_generic_function_return_type.zig | 1 - test/cases/compile_errors/global_variable_alignment_non_power_of_2.zig | 4 +- test/cases/compile_errors/global_variable_initializer_must_be_constant_expression.zig | 4 +- test/cases/compile_errors/ignored_assert-err-ok_return_value.zig | 4 +- test/cases/compile_errors/ignored_comptime_statement_value.zig | 10 +- test/cases/compile_errors/ignored_deferred_function_call.zig | 4 +- test/cases/compile_errors/ignored_deferred_statement_value.zig | 10 +- test/cases/compile_errors/ignored_return_value.zig | 4 +- test/cases/compile_errors/illegal_comparison_of_types.zig | 8 +- test/cases/compile_errors/implicit_cast_from_array_to_mutable_slice.zig | 6 +- test/cases/compile_errors/implicitly_increasing_pointer_alignment.zig | 2 +- test/cases/compile_errors/implicitly_increasing_slice_alignment.zig | 2 +- test/cases/compile_errors/import_outside_package_path.zig | 2 +- test/cases/compile_errors/incorrect_return_type.zig | 38 +- test/cases/compile_errors/increase_pointer_alignment_in_ptrCast.zig | 2 +- test/cases/compile_errors/indirect_struct_loop.zig | 22 +- test/cases/compile_errors/inferred_array_size_invalid_here.zig | 2 +- test/cases/compile_errors/inferring_error_set_of_function_pointer.zig | 4 +- test/cases/compile_errors/int-float_conversion_to_comptime_int-float.zig | 12 +- test/cases/compile_errors/intFromFloat_comptime_safety.zig | 17 + test/cases/compile_errors/intFromPtr_0_to_non_optional_pointer.zig | 10 + test/cases/compile_errors/intToEnum_on_non-exhaustive_enums_checks_int_in_range.zig | 11 - test/cases/compile_errors/intToPtr_with_misaligned_address.zig | 10 - test/cases/compile_errors/int_to_err_global_invalid_number.zig | 4 +- test/cases/compile_errors/int_to_err_non_global_invalid_number.zig | 4 +- test/cases/compile_errors/integer_overflow_error.zig | 8 +- test/cases/compile_errors/integer_underflow_error.zig | 4 +- test/cases/compile_errors/inttoptr_non_ptr_type.zig | 15 - test/cases/compile_errors/invalid_builtin_fn.zig | 5 +- test/cases/compile_errors/invalid_capture_type.zig | 10 +- test/cases/compile_errors/invalid_comparison_for_function_pointers.zig | 4 +- test/cases/compile_errors/invalid_field_access_in_comptime.zig | 7 +- test/cases/compile_errors/invalid_field_in_struct_value_expression.zig | 9 +- test/cases/compile_errors/invalid_float_casts.zig | 8 +- test/cases/compile_errors/invalid_int_casts.zig | 8 +- test/cases/compile_errors/invalid_non-exhaustive_enum_to_union.zig | 6 +- test/cases/compile_errors/invalid_optional_type_in_extern_struct.zig | 4 +- test/cases/compile_errors/invalid_pointer_with_reify_type.zig | 2 +- test/cases/compile_errors/invalid_shift_amount_error.zig | 6 +- test/cases/compile_errors/invalid_type.zig | 4 +- test/cases/compile_errors/invalid_type_in_builtin_extern.zig | 2 +- test/cases/compile_errors/invalid_variadic_function.zig | 8 +- test/cases/compile_errors/issue_3818_bitcast_from_parray-slice_to_u16.zig | 8 +- test/cases/compile_errors/local_variable_redeclaration.zig | 2 +- test/cases/compile_errors/local_variable_redeclares_parameter.zig | 6 +- test/cases/compile_errors/local_variable_shadowing_global.zig | 2 +- test/cases/compile_errors/main_function_with_bogus_args_type.zig | 4 +- test/cases/compile_errors/missing_const_in_slice_with_nested_array_type.zig | 2 +- test/cases/compile_errors/missing_else_clause.zig | 22 +- test/cases/compile_errors/missing_field_in_struct_value_expression.zig | 10 +- test/cases/compile_errors/missing_main_fn_in_executable.zig | 2 - test/cases/compile_errors/missing_param_name.zig | 4 +- test/cases/compile_errors/misspelled_type_with_pointer_only_reference.zig | 6 +- test/cases/compile_errors/mul_overflow_in_function_evaluation.zig | 5 +- test/cases/compile_errors/multiple_function_definitions.zig | 4 +- test/cases/compile_errors/negation_overflow_in_function_evaluation.zig | 4 +- test/cases/compile_errors/nested_vectors.zig | 1 - test/cases/compile_errors/noalias_on_non_pointer_param.zig | 20 +- test/cases/compile_errors/non-comptime-parameter-used-as-array-size.zig | 3 +- test/cases/compile_errors/non-const_expression_function_call_with_struct_return_value_outside_function.zig | 6 +- test/cases/compile_errors/non-const_expression_in_struct_literal_outside_function.zig | 6 +- test/cases/compile_errors/non-const_variables_of_things_that_require_const_variables.zig | 50 +- test/cases/compile_errors/non-exhaustive_enum_marker_assigned_a_value.zig | 5 +- test/cases/compile_errors/non-inline_for_loop_on_a_type_that_requires_comptime.zig | 4 +- test/cases/compile_errors/non_constant_expression_in_array_size.zig | 12 +- test/cases/compile_errors/non_float_passed_to_floatToInt.zig | 10 - test/cases/compile_errors/non_float_passed_to_intFromFloat.zig | 10 + test/cases/compile_errors/non_int_passed_to_floatFromInt.zig | 10 + test/cases/compile_errors/non_int_passed_to_intToFloat.zig | 10 - test/cases/compile_errors/non_pointer_given_to_intFromPtr.zig | 9 + test/cases/compile_errors/non_pointer_given_to_ptrToInt.zig | 9 - test/cases/compile_errors/offsetOf-bad_field_name.zig | 7 +- test/cases/compile_errors/offsetOf-non_struct.zig | 2 +- test/cases/compile_errors/old_fn_ptr_in_extern_context.zig | 2 +- test/cases/compile_errors/out_of_int_range_comptime_float_passed_to_intFromFloat.zig | 10 + test/cases/compile_errors/out_of_range_comptime_int_passed_to_floatToInt.zig | 10 - test/cases/compile_errors/overflow_in_enum_value_allocation.zig | 4 +- test/cases/compile_errors/packed_union_given_enum_tag_type.zig | 2 +- test/cases/compile_errors/packed_union_with_automatic_layout_field.zig | 2 +- test/cases/compile_errors/panic_called_at_compile_time.zig | 4 +- test/cases/compile_errors/parameter_redeclaration.zig | 7 +- test/cases/compile_errors/pass_const_ptr_to_mutable_ptr_fn.zig | 9 +- test/cases/compile_errors/passing_an_under-aligned_function_pointer.zig | 4 +- test/cases/compile_errors/pointer_to_noreturn.zig | 4 +- test/cases/compile_errors/ptrFromInt_non_ptr_type.zig | 15 + test/cases/compile_errors/ptrFromInt_with_misaligned_address.zig | 10 + test/cases/compile_errors/ptrToInt_0_to_non_optional_pointer.zig | 10 - test/cases/compile_errors/range_operator_in_switch_used_on_error_set.zig | 8 +- test/cases/compile_errors/reassign_to_array_parameter.zig | 4 +- test/cases/compile_errors/reassign_to_struct_parameter.zig | 4 +- test/cases/compile_errors/redefinition_of_enums.zig | 4 +- test/cases/compile_errors/redefinition_of_global_variables.zig | 4 +- test/cases/compile_errors/redefinition_of_struct.zig | 4 +- test/cases/compile_errors/reference_to_const_data.zig | 6 +- test/cases/compile_errors/reify_type.Fn_with_is_generic_true.zig | 4 +- test/cases/compile_errors/reify_type.Fn_with_is_var_args_true_and_non-C_callconv.zig | 4 +- test/cases/compile_errors/reify_type.Fn_with_return_type_null.zig | 4 +- test/cases/compile_errors/reify_type_for_exhaustive_enum_with_non-integer_tag_type.zig | 2 +- test/cases/compile_errors/reify_type_for_exhaustive_enum_with_undefined_tag_type.zig | 2 +- test/cases/compile_errors/reify_type_union_payload_is_undefined.zig | 4 +- test/cases/compile_errors/return_from_defer_expression.zig | 6 +- test/cases/compile_errors/runtime_assignment_to_comptime_struct_type.zig | 6 +- test/cases/compile_errors/runtime_assignment_to_comptime_union_type.zig | 6 +- test/cases/compile_errors/runtime_to_comptime_num.zig | 6 +- test/cases/compile_errors/saturating_shl_assign_does_not_allow_negative_rhs_at_comptime.zig | 8 +- test/cases/compile_errors/self_referential_struct_requires_comptime.zig | 1 - test/cases/compile_errors/setAlignStack_in_inline_function.zig | 3 +- test/cases/compile_errors/slice_passed_as_array_init_type_with_elems.zig | 2 +- test/cases/compile_errors/slice_sentinel_mismatch-2.zig | 4 +- test/cases/compile_errors/slice_used_as_extern_fn_param.zig | 2 +- test/cases/compile_errors/specify_enum_tag_type_that_is_too_small.zig | 2 +- test/cases/compile_errors/specify_non-integer_enum_tag_type.zig | 4 +- test/cases/compile_errors/src_fields_runtime.zig | 5 +- test/cases/compile_errors/stage1/obj/generic_function_where_return_type_is_self-referenced.zig | 6 +- test/cases/compile_errors/stage1/obj/unsupported_modifier_at_start_of_asm_output_constraint.zig | 6 +- test/cases/compile_errors/std.fmt_error_for_unused_arguments.zig | 2 +- test/cases/compile_errors/struct_type_mismatch_in_arg.zig | 8 +- test/cases/compile_errors/struct_type_returned_from_non-generic_function.zig | 2 +- test/cases/compile_errors/struct_with_declarations_unavailable_for_reify_type.zig | 4 +- test/cases/compile_errors/struct_with_invalid_field.zig | 10 +- test/cases/compile_errors/sub_overflow_in_function_evaluation.zig | 4 +- test/cases/compile_errors/suspend_inside_suspend_block.zig | 3 +- test/cases/compile_errors/switch_expression-duplicate_enumeration_prong.zig | 4 +- test/cases/compile_errors/switch_expression-duplicate_enumeration_prong_when_else_present.zig | 4 +- test/cases/compile_errors/switch_expression-duplicate_or_overlapping_integer_value.zig | 16 +- test/cases/compile_errors/switch_expression-duplicate_type.zig | 4 +- test/cases/compile_errors/switch_expression-duplicate_type_struct_alias.zig | 4 +- test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig | 4 +- test/cases/compile_errors/switch_expression-non_exhaustive_integer_prongs.zig | 4 +- test/cases/compile_errors/switch_expression-switch_on_pointer_type_with_no_else.zig | 4 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_bool.zig | 4 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_enum.zig | 6 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_range_i8.zig | 4 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_range_u8.zig | 4 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_u1.zig | 4 +- test/cases/compile_errors/switch_expression-unreachable_else_prong_u2.zig | 4 +- test/cases/compile_errors/switching_with_exhaustive_enum_has___prong_.zig | 2 +- test/cases/compile_errors/switching_with_non-exhaustive_enums.zig | 2 +- test/cases/compile_errors/tagName_on_invalid_value_of_non-exhaustive_enum.zig | 4 +- test/cases/compile_errors/tagName_used_on_union_with_no_associated_enum_tag.zig | 2 +- test/cases/compile_errors/top_level_decl_dependency_loop.zig | 4 +- test/cases/compile_errors/try_in_function_with_non_error_return_type.zig | 2 +- test/cases/compile_errors/tuple_init_edge_cases.zig | 42 +- test/cases/compile_errors/type_checking_function_pointers.zig | 10 +- test/cases/compile_errors/undeclared_identifier.zig | 6 +- test/cases/compile_errors/union_auto-enum_value_already_taken.zig | 2 +- test/cases/compile_errors/union_enum_field_does_not_match_enum.zig | 2 +- test/cases/compile_errors/unreachable_parameter.zig | 8 +- test/cases/compile_errors/unreachable_with_return.zig | 10 +- test/cases/compile_errors/while_expected_bool_got_error_union.zig | 4 +- test/cases/compile_errors/while_expected_bool_got_optional.zig | 4 +- test/cases/compile_errors/while_expected_error_union_got_bool.zig | 10 +- test/cases/compile_errors/while_expected_error_union_got_optional.zig | 10 +- test/cases/compile_errors/while_expected_optional_got_bool.zig | 8 +- test/cases/compile_errors/while_expected_optional_got_error_union.zig | 8 +- test/cases/compile_errors/write_to_const_global_variable.zig | 6 +- test/cases/compile_errors/wrong_function_type.zig | 18 +- test/cases/compile_errors/wrong_number_of_arguments.zig | 6 +- test/cases/compile_errors/wrong_number_of_arguments_for_method_fn_call.zig | 12 +- test/cases/compile_errors/wrong_size_to_an_array_literal.zig | 2 +- test/cases/compile_errors/wrong_types_given_to_export.zig | 6 +- test/cases/comptime_var.2.zig | 2 +- test/cases/comptime_var.6.zig | 2 +- test/cases/conditional_branches.0.zig | 2 +- test/cases/conditional_branches.1.zig | 2 +- test/cases/decl_value_arena.zig | 18 +- test/cases/enum_values.0.zig | 4 +- test/cases/enum_values.1.zig | 8 +- test/cases/error_in_nested_declaration.zig | 2 +- test/cases/hello_world_with_updates.2.zig | 2 +- test/cases/hello_world_with_updates.3.zig | 2 +- test/cases/hello_world_with_updates.4.zig | 2 +- test/cases/hello_world_with_updates.5.zig | 2 +- test/cases/hello_world_with_updates.6.zig | 2 +- test/cases/int_to_ptr.0.zig | 2 +- test/cases/int_to_ptr.1.zig | 2 +- test/cases/llvm/f_segment_address_space_reading_and_writing.zig | 8 +- test/cases/safety/@alignCast misaligned.zig | 2 +- test/cases/safety/@enumFromInt - no matching tag value.zig | 26 + test/cases/safety/@errSetCast error not present in destination.zig | 4 +- test/cases/safety/@floatToInt cannot fit - negative out of range.zig | 20 - test/cases/safety/@floatToInt cannot fit - negative to unsigned.zig | 20 - test/cases/safety/@floatToInt cannot fit - positive out of range.zig | 20 - test/cases/safety/@intFromFloat cannot fit - negative out of range.zig | 20 + test/cases/safety/@intFromFloat cannot fit - negative to unsigned.zig | 20 + test/cases/safety/@intFromFloat cannot fit - positive out of range.zig | 20 + test/cases/safety/@intToEnum - no matching tag value.zig | 26 - test/cases/safety/@intToPtr address zero to non-optional byte-aligned pointer.zig | 18 - test/cases/safety/@intToPtr address zero to non-optional pointer.zig | 18 - test/cases/safety/@ptrFromInt address zero to non-optional byte-aligned pointer.zig | 18 + test/cases/safety/@ptrFromInt address zero to non-optional pointer.zig | 18 + test/cases/safety/@ptrFromInt with misaligned address.zig | 18 + test/cases/safety/bad union field access.zig | 2 +- test/cases/safety/cast []u8 to bigger slice of wrong size.zig | 2 +- test/cases/safety/cast integer to global error and no code matches.zig | 2 +- test/cases/safety/error return trace across suspend points.zig | 3 +- test/cases/safety/exact division failure - vectors.zig | 4 +- test/cases/safety/for_len_mismatch_three.zig | 1 - test/cases/safety/intToPtr with misaligned address.zig | 18 - test/cases/safety/integer division by zero - vectors.zig | 4 +- test/cases/safety/pointer casting to null function pointer.zig | 2 +- test/cases/safety/slice sentinel mismatch - optional pointers.zig | 2 +- test/cases/safety/zero casted to error.zig | 2 +- test/cases/unused_labels.3.zig | 4 +- test/cases/variable_shadowing.3.zig | 3 +- test/cases/variable_shadowing.4.zig | 3 +- test/cases/variable_shadowing.5.zig | 3 +- test/cases/variable_shadowing.6.zig | 4 +- test/cases/x86_64-linux/inline_assembly.2.zig | 2 +- test/cases/x86_64-linux/inline_assembly.3.zig | 2 +- test/cbe.zig | 30 +- test/compare_output.zig | 4 +- test/gen_h.zig | 2 +- test/link/common_symbols_alignment/main.zig | 4 +- test/standalone/pie/main.zig | 2 +- test/translate_c.zig | 92 ++-- tools/gen_outline_atomics.zig | 8 +- tools/gen_stubs.zig | 2 +- tools/process_headers.zig | 10 +- tools/update-linux-headers.zig | 2 +- tools/update_clang_options.zig | 2 +- tools/update_cpu_features.zig | 4 +- tools/update_spirv_features.zig | 6 +- 682 files changed, 8613 insertions(+), 8278 deletions(-)