diff options
Diffstat (limited to 'lib/std/math.zig')
| -rw-r--r-- | lib/std/math.zig | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/std/math.zig b/lib/std/math.zig index 3daf643a79..fef33ead9b 100644 --- a/lib/std/math.zig +++ b/lib/std/math.zig @@ -624,7 +624,10 @@ fn testDivFloor() void { pub fn divCeil(comptime T: type, numerator: T, denominator: T) !T { @setRuntimeSafety(false); if (numerator <= 0) return divTrunc(T, numerator, denominator); - if (@typeInfo(T) == .Float) return @ceil(numerator / denominator); + if (@typeInfo(T) == .Float) { + if (denominator == 0) return error.DivisionByZero; + return @ceil(numerator / denominator); + } return (try divFloor(T, numerator - 1, denominator)) + 1; } |
