lib/std/zig/AstGen.zig | 335 ++-- lib/std/zig/Zir.zig | 171 +- src/Autodoc.zig | 96 +- src/Builtin.zig | 2 + src/Compilation.zig | 4 + src/InternPool.zig | 3000 +++++++++++++++++++------------- src/Liveness.zig | 4 +- src/Module.zig | 239 ++- src/Package/Module.zig | 40 +- src/Sema.zig | 1915 ++++++++++---------- src/TypedValue.zig | 12 +- src/Value.zig | 26 +- src/arch/wasm/CodeGen.zig | 5 +- src/arch/wasm/abi.zig | 2 +- src/arch/x86_64/CodeGen.zig | 2 +- src/codegen.zig | 143 +- src/codegen/c.zig | 223 +-- src/codegen/c/type.zig | 16 +- src/codegen/llvm.zig | 61 +- src/codegen/spirv.zig | 20 +- src/glibc.zig | 1 + src/libcxx.zig | 2 + src/libtsan.zig | 1 + src/libunwind.zig | 1 + src/link/Dwarf.zig | 7 +- src/main.zig | 18 +- src/musl.zig | 1 + src/print_zir.zig | 107 +- src/type.zig | 382 ++-- test/behavior/enum.zig | 21 + test/behavior/generics.zig | 8 +- test/behavior/src.zig | 8 +- test/behavior/struct.zig | 23 + test/behavior/type.zig | 26 + test/behavior/typename.zig | 27 +- test/behavior/union.zig | 27 + test/cases/compile_errors/reify_struct.zig | 2 +- test/cases/compile_errors/reify_type_for_tagged_union_with_extra_enum_field.zig | 2 +- test/cases/compile_errors/reify_type_for_tagged_union_with_no_union_fields.zig | 2 +- 39 files changed, 4063 insertions(+), 2919 deletions(-)