doc/docgen.zig | 4 +- doc/langref.html.in | 28 +- lib/std/ascii.zig | 23 +- lib/std/build.zig | 17 +- lib/std/c.zig | 2 +- lib/std/c/dragonfly.zig | 2 +- lib/std/c/freebsd.zig | 2 +- lib/std/c/linux.zig | 2 +- lib/std/c/netbsd.zig | 2 +- lib/std/crypto/blake3.zig | 3 +- lib/std/debug.zig | 32 +- lib/std/dwarf.zig | 58 +- lib/std/dynamic_library.zig | 4 +- lib/std/elf.zig | 1 + lib/std/event/batch.zig | 6 +- lib/std/event/channel.zig | 11 +- lib/std/event/future.zig | 4 +- lib/std/event/group.zig | 16 +- lib/std/event/lock.zig | 8 +- lib/std/event/locked.zig | 2 +- lib/std/event/loop.zig | 47 +- lib/std/event/rwlock.zig | 13 +- lib/std/event/rwlocked.zig | 4 +- lib/std/fs/file.zig | 4 +- lib/std/hash/auto_hash.zig | 4 +- lib/std/json.zig | 8 +- lib/std/json/write_stream.zig | 61 +- lib/std/mem.zig | 27 +- lib/std/net.zig | 9 +- lib/std/net/test.zig | 2 +- lib/std/os.zig | 26 +- lib/std/os/bits/darwin.zig | 10 +- lib/std/os/bits/dragonfly.zig | 12 +- lib/std/os/bits/freebsd.zig | 10 +- lib/std/os/bits/linux.zig | 10 +- lib/std/os/linux.zig | 4 +- lib/std/os/linux/arm-eabi.zig | 2 +- lib/std/os/linux/arm64.zig | 2 +- lib/std/os/linux/i386.zig | 2 +- lib/std/os/linux/mips.zig | 2 +- lib/std/os/linux/riscv64.zig | 2 +- lib/std/os/linux/x86_64.zig | 2 +- lib/std/os/uefi/protocols/absolute_pointer_protocol.zig | 4 +- lib/std/os/uefi/protocols/edid_override_protocol.zig | 2 +- lib/std/os/uefi/protocols/file_protocol.zig | 20 +- lib/std/os/uefi/protocols/graphics_output_protocol.zig | 6 +- lib/std/os/uefi/protocols/hii_database_protocol.zig | 8 +- lib/std/os/uefi/protocols/hii_popup_protocol.zig | 2 +- lib/std/os/uefi/protocols/ip6_config_protocol.zig | 8 +- lib/std/os/uefi/protocols/ip6_protocol.zig | 18 +- lib/std/os/uefi/protocols/ip6_service_binding_protocol.zig | 4 +- lib/std/os/uefi/protocols/loaded_image_protocol.zig | 2 +- lib/std/os/uefi/protocols/managed_network_protocol.zig | 16 +- lib/std/os/uefi/protocols/managed_network_service_binding_protocol.zig | 4 +- lib/std/os/uefi/protocols/rng_protocol.zig | 4 +- lib/std/os/uefi/protocols/simple_file_system_protocol.zig | 2 +- lib/std/os/uefi/protocols/simple_network_protocol.zig | 26 +- lib/std/os/uefi/protocols/simple_pointer_protocol.zig | 4 +- lib/std/os/uefi/protocols/simple_text_input_ex_protocol.zig | 12 +- lib/std/os/uefi/protocols/simple_text_input_protocol.zig | 4 +- lib/std/os/uefi/protocols/simple_text_output_protocol.zig | 18 +- lib/std/os/uefi/protocols/udp6_protocol.zig | 14 +- lib/std/os/uefi/protocols/udp6_service_binding_protocol.zig | 4 +- lib/std/os/uefi/tables/boot_services.zig | 64 +-- lib/std/os/uefi/tables/runtime_services.zig | 10 +- lib/std/os/windows/bits.zig | 12 +- lib/std/os/windows/user32.zig | 2 - lib/std/os/windows/ws2_32.zig | 2 +- lib/std/pdb.zig | 8 +- lib/std/priority_queue.zig | 6 +- lib/std/special/docs/main.js | 39 ++ lib/std/special/test_runner.zig | 2 +- lib/std/start.zig | 3 +- lib/std/thread.zig | 2 +- lib/std/zig/ast.zig | 40 +- lib/std/zig/cross_target.zig | 2 +- lib/std/zig/parse.zig | 438 ++++++++++----- lib/std/zig/parser_test.zig | 254 +++++++-- lib/std/zig/render.zig | 52 +- lib/std/zig/system.zig | 1 + lib/std/zig/system/macos.zig | 13 +- lib/std/zig/tokenizer.zig | 967 ++++++++++++++++---------------- src-self-hosted/clang.zig | 2 +- src-self-hosted/stage2.zig | 1 + src-self-hosted/translate_c.zig | 96 ++-- src-self-hosted/zir.zig | 2 +- src/all_types.hpp | 23 +- src/analyze.cpp | 20 +- src/analyze.hpp | 2 +- src/ast_render.cpp | 14 +- src/bigint.cpp | 1 + src/codegen.cpp | 30 +- src/ir.cpp | 97 ++-- src/ir_print.cpp | 8 +- src/parser.cpp | 89 +-- src/tokenizer.cpp | 4 +- src/tokenizer.hpp | 2 +- test/compile_errors.zig | 121 +++- test/run_translated_c.zig | 13 + test/runtime_safety.zig | 12 +- test/stack_traces.zig | 2 +- test/stage1/behavior/async_fn.zig | 70 ++- test/stage1/behavior/await_struct.zig | 4 +- test/stage1/behavior/cast.zig | 13 +- test/standalone/main_return_error/error_u8.zig | 4 +- test/standalone/main_return_error/error_u8_non_zero.zig | 7 +- tools/zig-gdb.py | 39 ++ 107 files changed, 1930 insertions(+), 1335 deletions(-)