Sponsored by: Klara, Inc.
Details
- Reviewers
ngie - Group Reviewers
Klara - Commits
- rGd8c9f8089187: libc: Update mktime(3) / timegm(3) tests.
Diff Detail
- Repository
- rG FreeBSD src repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
contrib/netbsd-tests/lib/libc/time/t_mktime.c | ||
---|---|---|
76 | Presumably we shouldn't rely on errno being clear if the call was successful? Where does it get set? We should probably stop clearing errno above too then? |
contrib/netbsd-tests/lib/libc/time/t_mktime.c | ||
---|---|---|
76 |
Neither C nor POSIX say anything about mktime() setting errno. It just so happens that a previous version of tzcode left errno untouched when mktime() was successful, NetBSD incorrectly assumed that this was mandated and added a test for it, and we trusted them and imported that test. The current version of tzcode almost always sets errno to EOVERFLOW on 64-bit platforms, even when successful, so the test fails.
This is contrib code, I don't want to make gratuitous changes. |
ATF_REQUIRE_EQ is generally better because it emits the LHS and RHS of the expression in the check, whereas ATF_REQUIRE omits this information (it’s about as good as “assert a == b”).
contrib/netbsd-tests/lib/libc/time/t_mktime.c | ||
---|---|---|
76 | We should file a NetBSD PR, so our fix can be picked up in the next update. |
contrib/netbsd-tests/lib/libc/time/t_mktime.c | ||
---|---|---|
76 | There is no “our fix”. This commit reverts the test to the latest upstream revision. |