int_least64_t t_expected;
};
-/* Test mainly with syntax_bits == 13
- (aka: (PDS_LEADING_YEAR | PDS_CENTURY | PDS_SECONDS)) */
+/* Test mainly with syntax_bits == LY. */
+enum { LY = PDS_CENTURY | PDS_SECONDS };
static struct posixtm_test const T[] =
{
/* no year specified; cross-check via another posixtime call */
- { "12131415.16", 13, 1, 0}, /* ??? Dec 13 14:15:16 ???? */
- { "12131415", 13, 1, 0}, /* ??? Dec 13 14:15:00 ???? */
+ { "12131415.16", LY, 1, 0}, /* ??? Dec 13 14:15:16 ???? */
+ { "12131415", LY, 1, 0}, /* ??? Dec 13 14:15:00 ???? */
/* These two tests fail on 64-bit Solaris up through at least
Solaris 10, which is off by one day for timestamps before
0001-01-01 00:00:00 UTC. */
- { "000001010000.00", 13, 1,
+ { "000001010000.00", LY, 1,
- INT64_C (62167219200)},/* Sat Jan 1 00:00:00 0 */
- { "000012312359.59", 13, 1,
+ { "000012312359.59", LY, 1,
- INT64_C (62135596801)},/* Fri Dec 31 23:59:59 0 */
- { "000101010000.00", 13, 1,
+ { "000101010000.00", LY, 1,
- INT64_C (62135596800)},/* Sat Jan 1 00:00:00 1 */
- { "190112132045.51", 13, 1,
+ { "190112132045.51", LY, 1,
- INT64_C (2147483649)},/* Fri Dec 13 20:45:51 1901 */
- { "190112132045.52", 13, 1,
+ { "190112132045.52", LY, 1,
- INT64_C (2147483648)},/* Fri Dec 13 20:45:52 1901 */
- { "190112132045.53", 13, 1, -2147483647}, /* Fri Dec 13 20:45:53 1901 */
- { "190112132046.52", 13, 1, -2147483588}, /* Fri Dec 13 20:46:52 1901 */
- { "190112132145.52", 13, 1, -2147480048}, /* Fri Dec 13 21:45:52 1901 */
- { "190112142045.52", 13, 1, -2147397248}, /* Sat Dec 14 20:45:52 1901 */
- { "190201132045.52", 13, 1, -2144805248}, /* Mon Jan 13 20:45:52 1902 */
- { "196912312359.59", 13, 1, -1}, /* Wed Dec 31 23:59:59 1969 */
- { "197001010000.00", 13, 1, 0}, /* Thu Jan 1 00:00:00 1970 */
- { "197001010000.01", 13, 1, 1}, /* Thu Jan 1 00:00:01 1970 */
- { "197001010001.00", 13, 1, 60}, /* Thu Jan 1 00:01:00 1970 */
- { "197001010000.60", 13, 1, 60}, /* Thu Jan 1 00:01:00 1970 */
- { "197001010100.00", 13, 1, 3600}, /* Thu Jan 1 01:00:00 1970 */
- { "197001020000.00", 13, 1, 86400}, /* Fri Jan 2 00:00:00 1970 */
- { "197002010000.00", 13, 1, 2678400}, /* Sun Feb 1 00:00:00 1970 */
- { "197101010000.00", 13, 1, 31536000}, /* Fri Jan 1 00:00:00 1971 */
- { "197001000000.00", 13, 0, 0}, /* -- */
- { "197000010000.00", 13, 0, 0}, /* -- */
- { "197001010060.00", 13, 0, 0}, /* -- */
- { "197001012400.00", 13, 0, 0}, /* -- */
- { "197001320000.00", 13, 0, 0}, /* -- */
- { "197013010000.00", 13, 0, 0}, /* -- */
- { "203801190314.06", 13, 1, 2147483646}, /* Tue Jan 19 03:14:06 2038 */
- { "203801190314.07", 13, 1, 2147483647}, /* Tue Jan 19 03:14:07 2038 */
- { "203801190314.08", 13, 1,
+ { "190112132045.53", LY, 1, -2147483647}, /* Fri Dec 13 20:45:53 1901 */
+ { "190112132046.52", LY, 1, -2147483588}, /* Fri Dec 13 20:46:52 1901 */
+ { "190112132145.52", LY, 1, -2147480048}, /* Fri Dec 13 21:45:52 1901 */
+ { "190112142045.52", LY, 1, -2147397248}, /* Sat Dec 14 20:45:52 1901 */
+ { "190201132045.52", LY, 1, -2144805248}, /* Mon Jan 13 20:45:52 1902 */
+ { "196912312359.59", LY, 1, -1}, /* Wed Dec 31 23:59:59 1969 */
+ { "197001010000.00", LY, 1, 0}, /* Thu Jan 1 00:00:00 1970 */
+ { "197001010000.01", LY, 1, 1}, /* Thu Jan 1 00:00:01 1970 */
+ { "197001010001.00", LY, 1, 60}, /* Thu Jan 1 00:01:00 1970 */
+ { "197001010000.60", LY, 1, 60}, /* Thu Jan 1 00:01:00 1970 */
+ { "197001010100.00", LY, 1, 3600}, /* Thu Jan 1 01:00:00 1970 */
+ { "197001020000.00", LY, 1, 86400}, /* Fri Jan 2 00:00:00 1970 */
+ { "197002010000.00", LY, 1, 2678400}, /* Sun Feb 1 00:00:00 1970 */
+ { "197101010000.00", LY, 1, 31536000}, /* Fri Jan 1 00:00:00 1971 */
+ { "197001000000.00", LY, 0, 0}, /* -- */
+ { "197000010000.00", LY, 0, 0}, /* -- */
+ { "197001010060.00", LY, 0, 0}, /* -- */
+ { "197001012400.00", LY, 0, 0}, /* -- */
+ { "197001320000.00", LY, 0, 0}, /* -- */
+ { "197013010000.00", LY, 0, 0}, /* -- */
+ { "203801190314.06", LY, 1, 2147483646}, /* Tue Jan 19 03:14:06 2038 */
+ { "203801190314.07", LY, 1, 2147483647}, /* Tue Jan 19 03:14:07 2038 */
+ { "203801190314.08", LY, 1,
INT64_C ( 2147483648)},/* Tue Jan 19 03:14:08 2038 */
- { "999912312359.59", 13, 1,
+ { "999912312359.59", LY, 1,
INT64_C (253402300799)},/* Fri Dec 31 23:59:59 9999 */
- { "1112131415", 13, 1, 1323785700}, /* Tue Dec 13 14:15:00 2011 */
- { "1112131415.16", 13, 1, 1323785716}, /* Tue Dec 13 14:15:16 2011 */
- { "201112131415.16", 13, 1, 1323785716}, /* Tue Dec 13 14:15:16 2011 */
- { "191112131415.16", 13, 1, -1831974284}, /* Wed Dec 13 14:15:16 1911 */
- { "203712131415.16", 13, 1, 2144326516}, /* Sun Dec 13 14:15:16 2037 */
- { "3712131415.16", 13, 1, 2144326516}, /* Sun Dec 13 14:15:16 2037 */
- { "6812131415.16", 13, 1,
+ { "1112131415", LY, 1, 1323785700}, /* Tue Dec 13 14:15:00 2011 */
+ { "1112131415.16", LY, 1, 1323785716}, /* Tue Dec 13 14:15:16 2011 */
+ { "201112131415.16", LY, 1, 1323785716}, /* Tue Dec 13 14:15:16 2011 */
+ { "191112131415.16", LY, 1, -1831974284}, /* Wed Dec 13 14:15:16 1911 */
+ { "203712131415.16", LY, 1, 2144326516}, /* Sun Dec 13 14:15:16 2037 */
+ { "3712131415.16", LY, 1, 2144326516}, /* Sun Dec 13 14:15:16 2037 */
+ { "6812131415.16", LY, 1,
INT64_C ( 3122633716)},/* Thu Dec 13 14:15:16 2068 */
- { "6912131415.16", 13, 1, -1590284}, /* Sat Dec 13 14:15:16 1969 */
- { "7012131415.16", 13, 1, 29945716}, /* Sun Dec 13 14:15:16 1970 */
- { "1213141599", 2, 1, 945094500}, /* Mon Dec 13 14:15:00 1999 */
- { "1213141500", 2, 1, 976716900}, /* Wed Dec 13 14:15:00 2000 */
+ { "6912131415.16", LY, 1, -1590284}, /* Sat Dec 13 14:15:16 1969 */
+ { "7012131415.16", LY, 1, 29945716}, /* Sun Dec 13 14:15:16 1970 */
+ { "1213141599", PDS_TRAILING_YEAR,
+ 1, 945094500}, /* Mon Dec 13 14:15:00 1999 */
+ { "1213141500", PDS_TRAILING_YEAR,
+ 1, 976716900}, /* Wed Dec 13 14:15:00 2000 */
{ NULL, 0, 0, 0}
};