lib/compiler/aro/aro/Value.zig | 42 +- lib/std/math.zig | 1 + lib/std/math/big.zig | 2 - lib/std/math/big/int.zig | 228 +++++++-- lib/std/math/big/int_test.zig | 408 ++++++++++++++++ lib/std/math/big/rational.zig | 820 -------------------------------- lib/std/math/float.zig | 113 +++++ lib/std/zon/parse.zig | 2 +- src/Air.zig | 8 + src/Air/Legalize.zig | 271 +++++++++-- src/Air/Liveness.zig | 4 + src/Air/Liveness/Verify.zig | 2 + src/Air/print.zig | 2 + src/Air/types_resolved.zig | 2 + src/Sema.zig | 180 +++---- src/Sema/LowerZon.zig | 31 +- src/Value.zig | 24 +- src/arch/aarch64/CodeGen.zig | 2 + src/arch/arm/CodeGen.zig | 2 + src/arch/riscv64/CodeGen.zig | 4 + src/arch/sparc64/CodeGen.zig | 2 + src/arch/wasm/CodeGen.zig | 4 + src/arch/x86_64/CodeGen.zig | 4 + src/codegen/c.zig | 23 +- src/codegen/llvm.zig | 7 +- src/codegen/spirv.zig | 2 + stage1/zig.h | 9 + stage1/zig1.wasm | Bin 2998903 -> 3172028 bytes test/behavior/cast.zig | 64 +++ test/cases/safety/@intFromFloat cannot fit - boundary case - i0 max.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - i0 min.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - signed max.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - signed min.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - u0 max.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - u0 min.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - unsigned max.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - unsigned min.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - vector max.zig | 16 + test/cases/safety/@intFromFloat cannot fit - boundary case - vector min.zig | 16 + 39 files changed, 1341 insertions(+), 1082 deletions(-)