doc/langref.html.in | 2 +- doc/langref/test_comptime_shlExact_overflow.zig | 6 + doc/langref/test_comptime_shlExact_overwlow.zig | 6 - src/InternPool.zig | 13 +- src/Sema.zig | 848 ++--- src/Sema/arith.zig | 1170 +++++-- src/Sema/bitcast.zig | 20 +- src/Value.zig | 720 +--- src/Zcu/PerThread.zig | 25 + src/arch/wasm/CodeGen.zig | 2 +- src/codegen.zig | 2 +- src/codegen/c.zig | 10 +- src/codegen/llvm.zig | 12 +- src/link/Coff.zig | 2 +- src/link/Elf/ZigObject.zig | 2 +- src/link/MachO/ZigObject.zig | 2 +- src/mutable_value.zig | 10 +- test/behavior/bit_shifting.zig | 13 +- test/cases/compile_errors/saturating_shl_does_not_allow_negative_rhs.zig | 6 +- test/cases/compile_errors/shift_by_larger_than_usize.zig | 10 + test/cases/compile_errors/shlExact_shifts_out_1_bits.zig | 2 +- test/cases/compile_errors/undef_arith_is_illegal.zig | 5600 ++++++++++++++++++-------------- test/cases/compile_errors/undef_arith_returns_undef.zig | 1816 +++++------ 23 files changed, 5493 insertions(+), 4806 deletions(-)