commit 7a941391d86a863ab08b24d161dcad8eb047f1bd (tree)
parent 78729c4939eabe9cdfe85492ca2e2eb43fdc8d46
Author: Andrew Kelley <andrew@ziglang.org>
Date: Mon, 12 Sep 2022 22:32:15 -0700
universal-libc: fix strncmp tests
The specification for this function is that it returns a positive value,
zero, or negative value, not that it returns the difference between
ascii values.
Diffstat:
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/lib/c.zig b/lib/c.zig
@@ -298,10 +298,10 @@ fn strerror(errnum: c_int) callconv(.C) [*:0]const u8 {
}
test "strncmp" {
- try std.testing.expect(strncmp("a", "b", 1) == -1);
- try std.testing.expect(strncmp("a", "c", 1) == -2);
- try std.testing.expect(strncmp("b", "a", 1) == 1);
- try std.testing.expect(strncmp("\xff", "\x02", 1) == 253);
+ try std.testing.expect(strncmp("a", "b", 1) < 0);
+ try std.testing.expect(strncmp("a", "c", 1) < 0);
+ try std.testing.expect(strncmp("b", "a", 1) > 0);
+ try std.testing.expect(strncmp("\xff", "\x02", 1) > 0);
}
// TODO we should be able to put this directly in std/linux/x86_64.zig but