std.math.divCeil: handle floats correctly

This commit is contained in:
Kate Tsuyu
2020-08-28 09:48:40 -04:00
parent 9dfb917c20
commit aacfef17d5

View File

@@ -624,6 +624,7 @@ 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);
return (try divFloor(T, numerator - 1, denominator)) + 1;
}