lib/getdate.y


Log

Author Commit Date CI Message
Paul Eggert 589b85d1 2007-06-18T23:09:12 Detect porting problems to FreeBSD/arm, which has time_t wider than long int. Original problem reported for GNU diff by Xin Li in <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>. * modules/getdate (Depends-on): Add intprops, verify. * lib/getdate.y: Include intprops.h, verify.h. Verify that time_t is an integer type no wider than long int.
Eric Blake 0e698b54 2007-02-23T18:25:21 * lib/getdate.h (includes): Include <time.h>, not "timespec.h". * lib/stat-time.h (includes): Likewise. * lib/utimecmp.c (includes): Likewise. * lib/utimens.h (includes): Likewise. * lib/getdate.y (includes): Also include "timespec.h" for use internal to the module. * modules/utimens (Depends-on): Revert yesterday's patch. * modules/nanosleep (Depends-on): Add missing dependency.
Paul Eggert 4746d0d4 2006-10-24T19:54:55 * lib/getdate.y (yyerror): Make the arguments pointer-to-const, to pacify GCC with some -W flags enabled. Problem reported by Bruno Haible.
Paul Eggert 0632e115 2006-09-13T22:38:14 * _fpending.c: Include <config.h> unconditionally, since we no longer worry about uses that don't define HAVE_CONFIG_H. * acl.c, alloca.c, argmatch.c, atexit.c, backupfile.c: * basename.c, c-stack.c, c-strtod.c, calloc.c, canon-host.c: * canonicalize.c, chdir-long.c, chdir-safer.c, chown.c: * cloexec.c, close-stream.c, closeout.c, creat-safer.c: * cycle-check.c, diacrit.c, dirchownmod.c, dirfd.c, dirname.c: * dup-safer.c, dup2.c, error.c, euidaccess.c, exclude.c: * exitfail.c, fchmodat.c, fchown-stub.c, fd-safer.c: * file-type.c, fileblocks.c, filemode.c, filenamecat.c: * fnmatch.c, fopen-safer.c, fprintftime.c, free.c, fsusage.c: * ftruncate.c, fts-cycle.c, fts.c, full-write.c, gai_strerror.c: * getcwd.c, getdate.y, getdomainname.c, getgroups.c: * gethostname.c, gethrxtime.c, getloadavg.c, getlogin_r.c: * getndelim2.c, getnline.c, getopt.c, getopt1.c, getpass.c: * gettime.c, gettimeofday.c, getugroups.c, getusershell.c: * glob.c, group-member.c, hard-locale.c, hash-pjw.c, hash.c: * human.c, idcache.c, inet_ntop.c, inet_pton.c, inttostr.c: * isdir.c, lchown.c, linebuffer.c, long-options.c, lstat.c: * malloc.c, md5.c, memcasecmp.c, memchr.c, memcmp.c, memcoll.c: * memcpy.c, memmove.c, memrchr.c, mkancesdirs.c, mkdir-p.c: * mkdir.c, mkdirat.c, mkstemp-safer.c, mkstemp.c, modechange.c: * mountlist.c, nanosleep.c, obstack.c, open-safer.c: * openat-die.c, openat.c, pagealign_alloc.c, physmem.c: * pipe-safer.c, posixtm.c, posixver.c, putenv.c, quote.c: * quotearg.c, raise.c, readtokens.c, readtokens0.c, readutmp.c: * realloc.c, regex.c, rename.c, rmdir.c, rpmatch.c, safe-read.c: * same.c, save-cwd.c, savedir.c, setenv.c, settime.c, sha1.c: * sig2str.c, snprintf.c, strdup.c, strerror.c, strftime.c: * stripslash.c, strndup.c, strnlen.c, strpbrk.c, strtod.c: * strtoimax.c, strtol.c, strverscmp.c, tempname.c, time_r.c: * timegm.c, tmpfile-safer.c, unlinkdir.c, userspec.c, utime.c: * utimecmp.c, utimens.c, version-etc-fsf.c, version-etc.c: * xalloc-die.c, xgetcwd.c, xgethostname.c, xmalloc.c: * xmemcoll.c, xnanosleep.c, xreadlink.c, xstrtod.c: * xstrtoimax.c, xstrtol.c, xstrtoumax.c, yesno.c: Likewise.
Paul Eggert a8f0811e 2006-07-06T21:51:28 * lib/.cppi-disable: Add wcwidth. * lib/fnmatch.c (ISBLANK): Remove. All uses changed to isblank. (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro. (ISGRAPH): Remove. All uses changed to isgraph. (FOLD) [!defined _LIBC]: Remove special case. * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower. * lib/regext_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not HAVE_ISBLANK. * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special case. * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl; no longer needed. Check for isblank decl. * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl. * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead of existence.
Paul Eggert 4fde4952 2006-07-05T23:35:19 * lib/memcasecmp.c: Include <limits.h>. (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX. * lib/strtod.c (strtod): Don't assume isspace works on negative chars. Don't assume isdigit succeeds only on '0' through '9'. * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed. All uses of is_space replaced by isspace. * lib/fnmatch.c (ISASCII): Remove; no longer needed. All uses removed. (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT): (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed. All uses replaced by isprint etc. * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise. * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise. * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise. * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise. * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise. * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise. * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE rather than AC_CHECK_DECLS for strtoimax and strtoumax. * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer needed. All uses removed. * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise. * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise. * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer needed. * m4/getdate.m4 (gl_GETDATE): Likewise. * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise. * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise. * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise. * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise. * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer needed. * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC; no longer needed. * m4/exclude.m4 (gl_EXCLUDE): Likewise. * m4/getdate.m4 (gl_GETDATE): Likewise. * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise. * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise. * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise. * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise. * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
Paul Eggert 85a134e9 2006-06-11T07:12:27 * getdate.y (__attribute__): Don't define if already defined. Problem reported by Larry Jones. * utimens.c (__attribute__): Likewise.
Paul Eggert 707f6787 2006-04-25T10:30:13 * getdate.y (get_date): When adding relative date, start with the initial time, not with the result of the first mktime call.
Paul Eggert 5cc13c0f 2005-09-22T23:08:15 * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro. (gl_GETDATE): Use it. * lib/getdate.y (relative_time): New type. (RELATIVE_TIME_0): New constant. (parser_control): Use relative_time instead of doing it ourselves. (%union): Add new relative_time rel member. (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT): Now typeless. (relunit, relunit_snumber): Now of type rel. (zone, rel, relunit, get_date): Adjust to above changes.
Paul Eggert 267a39ba 2005-05-14T06:03:57 *** empty log message ***
Paul Eggert 82b1d9b7 2005-04-13T18:43:31 (zone): Allow relunit_snumber after tZONE, so that "UTC +1 second" continues to work. Problem reported by Dmitry V. Levin. (relunit_snumber): New rule. (relunit): Use it.
Paul Eggert 5bbc11b3 2005-04-12T07:22:51 (universal_time_zone_table): New constant. (time_zone_table): Remove GMT, UT, UTC entries; they're now in universal_time_zone_table. (lookup_zone): Prefer universal_time_zone_table to local_time_zone_table, so that "GMT" time stamps are allowed in London during the summer. Problem reported by Ian Abbott.
Paul Eggert f7303232 2005-04-04T19:53:39 (parser_control): rels_seen is now a boolean, not a count, since there's no maximum. All uses changed. Add member dsts_seen. (local_zone): Accumulate dsts_seen rather than relying on tm_isdst not being INT_MAX. (get_date): Initialize dsts_seen, and check that it doesn't go over 1. Use pc_rels_seen to decide whther a date is absolute. (number): Don't overwrite year. (get_date): Initialize pc.year.digits to 0, not 4, to enable above check.
Paul Eggert 10ce26c0 2005-02-26T08:18:27 * modules/gethrxtime: New file. * modules/xnanosleep (Files): Add m4/xnanosleep.m4. (Depends-on): Add gethrxtime. (configure.ac): Add gl_XNANOSLEEP. (Makefile.am): Remove lib_SOURCES line. * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files. * lib/timespec.h (gettime): Return void, since it always succeeds now. All uses changed. * lib/gettime.c (gettime) Likewise. [HAVE_NANOTIME]: Prefer nanotime. Assume gettimeofday succeeds, as POSIX requires. Assime time () succeeds, since other code already does. * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h. (timespec_subtract): Remove. (NANOSLEEP_BUG_WORKAROUND): New constant. (xnanosleep): Use gethrxtime rather than gettime; this simplifies things considerably. Use it only on GNU/Linux hosts, since the workaround shouldn't be needed elsewhere. * m4/gethrxtime.m4, m4/xnanosleep.m4: New files. * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
Paul Eggert 970562b4 2004-12-24T05:29:20 (YYSTACK_USE_ALLOCA): Define to 0, since there's no need to extend the stack.
Paul Eggert a9263d21 2004-12-24T05:21:05 (YYINITDEPTH): New macro, so that the initial stack is small too.
Paul Eggert 6fd80900 2004-12-20T08:08:51 Fix typo in comment in previous change.
Paul Eggert 8df1cde7 2004-12-19T13:41:34 * alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H. Remove now-obsolete comment about AIX. * getdate.y: Include <alloca.h> only if HAVE_ALLOCA. (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA. (YYMAXDEPTH): New macro.
Paul Eggert 65248632 2004-12-08T22:25:43 Merge from coreutils.
Paul Eggert b6d5792a 2004-11-16T08:25:37 (tORDINAL): New token. (day, relunit): Allow it for relative times. (relative_time_table): Use tORDINAL for ordinals.
Paul Eggert aa33a4be 2004-11-11T05:57:27 (SHR): New macro, which is a portable substitute for >> that should work even on Crays. (tm_diff): Use it.
Paul Eggert d5dcdb46 2004-11-03T17:37:58 Remove trailing white space.
Paul Eggert 92422e73 2004-11-02T19:18:44 * getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now. (get_date): Overparenthesize to avoid GCC warning.
Paul Eggert de95bdc2 2004-10-29T20:59:53 Add support for TZ="foo" within a date string. Fix some bugs near time_t boundaries. Reject dates with out-of-range components, e.g., "Sept 31". Include <stdlib.h>, "setenv.h", "xalloc.h". (ISDIGIT_LOCALE): Remove; unused. Note that the TZ and time functions used here are not reentrant. (mktime_ok, get_tz): New functions. (TZBUFSIZE): New constant. (get_date): Parse leading TZ="foo". Reject out-of-range components;. This requires that we sometimes generate our own TZ="XXX..." setting.
Paul Eggert dfe3217b 2004-10-25T05:50:16 Use Bison 1.875 features, and some minor code cleanups. This change does not affect semantics. Don't include <stdlib.h>; no longer needed. Don't include unlocked-io.h; only the "#if TEST" code uses stdio, and performance isn't crucial there. (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by Bison 1.875 features as described below. All uses of "PC." replaced by "pc->". (YYSTYPE): Add a forward declaration. (yylex, yyerror): Use full prototypes in forward decls. Use "%pure-parser" rather than obsolescent "%pure_parser". Use %parse-param and %lex-param instead of obsolescent YYPARSE_PARAM and YYLEX_PARAM. (meridian_table, month_and_day_table, time_units_table, relative_time_table, time_zone_table, military_table, lookup_zone, lookup_word, get_date): Use NULL instead of 0 where appropriate. (to_hour): Avoid abort (), to avoid a dependency on stdlib.h. (yyerror, yylex): Now accepts parser_control * arg. (main) [TEST]: Use '\0' rather than 0 for char.
Paul Eggert 917752ad 2004-10-04T20:17:39 Remove dependencies on unlocked-io.
Paul Eggert a62be9f4 2004-08-07T00:09:38 Merge from coreutils.
Paul Eggert e90f3dea 2004-06-06T18:55:59 * getdate.y (yylex): Allow space between sign and number.
Paul Eggert 30ffdfca 2004-03-31T07:20:49 Merge from coreutils.
Paul Eggert ceb979c7 2003-09-09T06:54:11 Remove K&R cruft.
Paul Eggert f64df147 2003-09-03T07:11:45 (relative_time_table): Use tDAY_UNIT for "tomorrow", "yesterday", "today", and "now" rather than tMINUTE_UNIT. Of course with correspondingly smaller numbers for tomorrow and yesterday. From Tadayoshi Funaba. Originally installed into sh-utils on 1999-08-07, but the patch got lost (I guess during the coreutils merge?).
Paul Eggert de6b4a96 2003-08-05T05:14:20 (date): Also accept dates like May-23-2003; suggestion from Karl Berry, implemented by Jim Meyering.
Bruno Haible 48dbf2c1 2003-01-10T21:06:49 Make it possibly to simply write: #include <alloca.h>.
Bruno Haible 0183445c 2002-12-31T12:57:56 Test HAVE_STRUCT_TM_TM_ZONE, not HAVE_TM_ZONE.
Jim Meyering 62b2a3d6 2002-01-16T22:43:41 add 2002 to Copyright line
Jim Meyering 0864d8e1 2002-01-16T22:33:58 (ISDIGIT): Comment fix. Add three semicolons, each just before a closing brace. Bison (as of version 1.31) no longer papers over that mistake.
Jim Meyering 92f1833a 2001-11-17T13:29:42 Include unlocked-io.h.
Jim Meyering edde4560 2001-04-08T19:58:59 that's necessary when the offset spans a DST transition.
Jim Meyering 2880c2d2 2000-06-15T07:57:58 (get_date): Apply relative times after time zone indicator, not before.
Jim Meyering 22e6c88a 2000-02-22T20:16:07 Handle two-digit years with leading zeros correctly. (textint): New typedef. (parser_control): Member year changed from int to textint. All uses changed. (YYSTYPE): Removed; replaced by %union with int and textint members. (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN, tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER, tYEAR_UNIT, tZONE, o_merid): Now of type <intval>. (tSNUMBER, tUNUMBER): Now of type <textintval>. (date, number, to_year): Use width of number in digits, not its value, to determine whether it's a 2-digit year, or a 2-digit time. (yylex): Store number of digits of numeric tokens. Reported by John Kendall. (parser_control): Changed from struct parser_control to typedef (for consistency). All uses changed. (tID): Removed; not used. (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
Jim Meyering 79df4125 2000-01-12T06:46:46 Update copyright notice.
Jim Meyering 88397e70 2000-01-06T18:25:03 Sync tm_diff with the GNU C Library. (TM_YEAR_BASE): Renamed from TM_YEAR_ORIGIN. All uses changed. (tm_diff): Renamed from difftm. All uses changed. Replace body with that taken from GNU C Library 2.1.3pre1. (get_date): Prefer tm_gmtoff to tm_diff if available.
Jim Meyering fd2b0d95 1999-12-22T20:49:19 rewrite expression (equivalently) at request of Paul Eggert
Jim Meyering b4eaa5bb 1999-12-22T11:14:05 (get_date): Fix typo in time_t overflow test. From Michael Stone.
Jim Meyering e38e9590 1999-10-31T15:49:05 update a comment from alpha.gnu.org:/home/gd/gnu/lib/getdate.y
Jim Meyering e5534304 1999-10-04T05:59:37 (__attribute__): Define to empty if GCC claims to be before 2.8; this is needed for OPENStep 4.2 cc. Also, define to empty if strict ANSI.
Jim Meyering 8a62daba 1999-08-29T14:55:24 (relative_time_table): Change `type' of `THIS' from tMINUTE_UNIT to tUNUMBER. From Urs Thuermann.
Jim Meyering 38b658cb 1999-08-29T12:55:35 (get_date): Rename latter local `tm' to probe_tm.
Jim Meyering 00869359 1999-08-29T12:28:56 (get_date): Rename outermost local `probe' to `quarter'.
Jim Meyering c6cb26ec 1999-08-29T07:29:51 Add copyright notice. (number): Handle `Nov 11 1996' example; see Risks Digest 20.55 http://catless.ncl.ac.uk/Risks/20.55.html#subj18 (1999-08-27) (<stdio.h>): Include only if testing. (ISUPPER): Remove. (ISLOWER, PC): New macros. (<string.h>): Include if HAVE_STRING_H, not USG. (bcopy): Remove. (yymaxdepth, ..., yycheck): Don't bother to redefine, since we assume bison. (EPOCH_YEAR): Renamed from EPOCH. (table): Renamed from TABLE. (meridian): Now an anonymous enum. (struct parser_control): New type. (YYLEX_PARAM, YYPARSE_PARAM, YYSTYPE): New macros. (yyInput, ..., yyRelYear): Migrated into struct parser_control. (%pure_parser): Added, so that the parser is pure. (%union): Removed; the type is now just plain int. All %type directives removed. (tLOCAL_ZONE): New %token. (month_day_table): Renamed from MonthDayTable. (gmtime, localtime, mktime, time): Declare only if not defined. (meridian_table): New table. (dst_table): New table. (units_table): renamed from UnitsTable. (relative_time_table): Renamed from OtherTable. (time_zone_table): Renamed from TimezoneTable. Modernized data. (military_table): Renamed from MilitaryTable. (to_hour): Renamed from ToHour. (to_year): Renamed from ToYear. (lookup_zone): New function. (LookupWord): Renamed from lookup_word. Use lookup_zone for time zones. (yylex): Now reentrant. All callers changed. (get_date): Add support for local time zone abbreviations. Make it reentrant.
Jim Meyering 70686f64 1999-08-07T09:50:34 (OtherTable[]): Use tDAY_UNIT for `tomorrow,' `yesterday,' `today,' and `now' rather than tMINUTE_UNIT. Of course with correspondingly smaller numbers for tomorrow and yesterday. This change does not change the way the code works, since the grammar rules for the two symbols are analogous.
Jim Meyering e850d55e 1999-05-20T03:49:25 add the comment to go with last change
Jim Meyering 85a3961e 1999-05-20T03:47:24 (get_date): Let mktime deduce tm_isdst if we have an absolute timestamp, or if the relative timestamp mentions days, months, or years.
Jim Meyering 224dcca3 1999-04-18T23:17:30 <stdlib.h>: Include if HAVE_STDLIB_H, since bison 1.27 invokes "free". (LookupWord, yylex): Don't pass negative char to ctype macros.
Jim Meyering 2a2630ca 1999-04-07T17:43:36 (difftm): Protoize.
Jim Meyering dc062ad0 1999-03-28T20:58:51 (get_date): Reuse tm_isdst of first localtime call; this is an improvement on a bug fix suggested by martin@dresden.nacamar.de. Do not assume that localtime and gmtime return non-null. From Paul Eggert.
Jim Meyering f4e36b57 1999-02-19T07:31:48 <alloca.h>: Include if HAVE_ALLOCA_H, not FORCE_ALLOCA_H. The FORCE_ALLOCA_H was a relic of the bad old pre-autoconf Emacs days.
Jim Meyering fdc9c3f1 1998-12-31T14:37:21 Fix warnings from gcc -W -Wall (__attribute__): Define. (ATTRIBUTE_UNUSED): Define. (yyerror): Mark parameter as unused with ATTRIBUTE_UNUSED. (MonthDayTable): Add initializers for last entry. (UnitsTable): Likewise. (OtherTable): Likewise. (MilitaryTable): Likewise.
Jim Meyering a34cff22 1998-03-14T16:31:51 s/get-date.h/getdate.h/
Jim Meyering b24e4cd5 1998-02-20T21:42:11 s/getdate.h/get-date.h/
Jim Meyering 6509445b 1998-01-06T23:53:33 Add %expect directive. Move inclusion of getdate.h and dependent extern declarations down so getdate.h's prototype follows the sometimes-enabled definition of `const' to nothing. Otherwise, the prototype wouldn't match the definition because of the defined-away `const'. (get_date): ANSI-fy definition. From Kaveh Ghazi.
Jim Meyering 98cf1a06 1997-06-01T17:15:51 (OtherTable): Interpret `next' as 1 (not 2) units. Patch from Richard Sharman <rsharman@magmacom.com>.
Jim Meyering a8c629e2 1997-04-10T03:46:01 s/;/. in comment to placate francois
Jim Meyering 54d6b079 1997-02-27T05:53:15 (tYEAR_UNIT): Increase yyRelYear by $1, not just by 1. From Andreas Schwab.
Jim Meyering 2c1196cc 1997-02-22T20:13:19 (tMONTH_UNIT): Increase yyRelMonth by $1, not just by 1. (tDAY_UNIT): Likewise for yyRelDay. (tHOUR_UNIT): Likewise for yyRelHour. (tMINUTE_UNIT): Likewise for yyRelMinutes. (tSEC_UNIT): Likewise for yyRelSeconds.
Jim Meyering 07b2c332 1997-01-18T20:17:39 Indent with GNU indent.
Jim Meyering 09426796 1997-01-18T20:12:10 Indent 2 more cpp-directives to reflect nesting.
Jim Meyering 764d26f0 1997-01-18T20:11:05 (get_date): Change prototype to reflect const'ness of parameters. Indent cpp-directives to reflect nesting.
Jim Meyering d1f0e0d4 1997-01-18T15:32:16 1997-01-06 Paul Eggert <eggert@twinsun.com> * getdate.y: Rewrite to use mktime. <sys/timeb.h>: Don't include. (mktime): Declare. (struct timeb, timezone, DOOMSDAY, SECSPERDAY, DSTMODE, yyDSTmode, ToSeconds, Convert, DSTcorrect, RelativeDate, RelativeMonth): Remove. (ToHour): New function (part of the old ToSeconds fn). (ToYear): New function (part of the old Convert fn). (TABLE.value, yyDayOrdinal, yyDayNumber, yyTimezone, yyDay, yyHour, yyMinutes, yyMonth, yySeconds, yyYear, yyRelMonth, yyRelSeconds, Number): Now int instead of time_t. (HOUR): Don't cast to time_t. (tDAY_UNIT, tHOUR_UNIT, tYEAR_UNIT): New %tokens. (UnitsTable): Use new units that are closer to the keywords. (yyRelDay, yyRelHour, yyRelMinutes, yyRelYear): New variables. (rel, relunit, get_date): Add support for them. (time): Fix timezone calculations for negative half-hour offsets when integer division truncates towards minus infinity. (zone): Incorporiate DST calculation directly. (get_date): 2nd arg is now time_t *, not struct timeb *. Use mktime to do most of the work, instead of computing it ourselves. Guard against falsely reporting errors near the time_t boundaries when parsing times in other time zones.
Jim Meyering d13a8bfc 1996-12-18T03:28:09 add blank line.
Jim Meyering 870ce697 1996-12-13T03:05:00 (IN_CTYPE_DOMAIN): Rename from ISASCII. (ISDIGIT): New definition from Paul Eggert. This one evaluates its argument exactly once. (yylex): Move increment out of ISALPHA argument. Use a comma-expression instead.
Jim Meyering 9f9db322 1996-12-10T04:34:18 (Convert): Don't reject all dates in 2038. Some fit in 31 bits.
Jim Meyering 809464b3 1996-12-01T19:15:03 (date): Interpret the date, L/M/N, as YYYY/MM/DD if L >= 1000, otherwise as MM/DD/YY. With this change, date --date=DATE accepts dates like those in an RCS log listing.
Jim Meyering fa854d42 1996-11-01T00:32:12 Remap yacc globals to have gd_ prefix. Suggestion to do as in gdb/c-exp.y from Tom Tromey.
Jim Meyering 5546ba7c 1996-09-07T17:42:58 Define and use upper case variants of ctype.h IS* macros. From Bruno Haible.
Jim Meyering 9d4f95f6 1996-03-10T05:00:20 Merge changes from FSF.
Jim Meyering e131b14f 1996-03-06T04:57:01 (RelativeMonth): Add 1900 to the year so that relative date specs that push the year through the end of the century work. For example, `date -d "01/01/1998 3 years" +%Y' now prints 2001. From Peter Dalgaard (pd@kubism.ku.dk).
Jim Meyering b6c390fc 1995-08-07T16:07:28 Add FIXME comments.
Jim Meyering c9f48301 1995-06-07T18:10:17 (Convert): Use 2037 as threshold, not 1999. Otherwise years after 1999 are treated as invalid. From Andreas Schwab.
Jim Meyering a5ebad6e 1995-01-27T15:01:25 .
Jim Meyering cd063a22 1995-01-27T15:00:54 .
Jim Meyering cad3ddc5 1995-01-27T05:36:14 Remove/rewrite some comments.
Jim Meyering fd6a9293 1995-01-27T05:22:23 .
Jim Meyering 73448497 1994-10-08T00:41:11 merge with 1.10q
Jim Meyering 8f16c54c 1994-09-27T20:52:18 merge with 1.10n1
Jim Meyering 1be7ab66 1994-09-25T01:25:18 .
Jim Meyering 70317255 1994-09-24T19:12:57 merge with 1.10m
Jim Meyering a96a4ca1 1994-09-17T02:47:05 merge with 1.10j
Jim Meyering e69ce0b9 1994-09-08T04:48:47 merge with 1.10i
Jim Meyering 44e6e017 1994-09-01T23:20:39 merge with 1.10h
Jim Meyering c0b7d211 1994-04-25T18:34:37 merge with 1.9.4g
Jim Meyering 8d2f9f58 1994-04-25T16:34:49 merge with 1.9.4f
Jim Meyering cac485b4 1994-04-24T12:48:45 Revert 1.14-1.16 changes that removed difftm and modified get_date.
Jim Meyering 21d35002 1994-04-19T13:40:49 merge with 1.9.4e
Jim Meyering b4e2cc12 1994-04-19T02:30:46 .
Jim Meyering 3fb00e68 1994-02-10T19:14:34 merge with 1.9.2g
Jim Meyering 33ca528b 1993-12-23T00:38:42 merge with 1.9.2a
Jim Meyering 23dd0807 1993-12-23T00:08:30 .
Jim Meyering fb2a33bb 1993-11-10T06:05:05 merge with 1.9
Jim Meyering 2e296bb5 1993-11-09T13:21:36 merge with 1.9