X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fparse-datetime.y;h=23a9a4159a3d7ec47d8a8935a27abf8fc2194763;hb=00a195984d09dcd5ac84866740d35ad322f2578b;hp=f22c754e0fdcde3eede5162418fa37828d9566fa;hpb=2bb63bfb25474ea147ee9f1523c0337997359a4c;p=pspp diff --git a/lib/parse-datetime.y b/lib/parse-datetime.y index f22c754e0f..23a9a4159a 100644 --- a/lib/parse-datetime.y +++ b/lib/parse-datetime.y @@ -1,8 +1,7 @@ %{ /* Parse a string into an internal time stamp. - Copyright (C) 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, - 2010 Free Software Foundation, Inc. + Copyright (C) 1999-2000, 2002-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -50,7 +49,7 @@ #define YYMAXDEPTH 20 #define YYINITDEPTH YYMAXDEPTH -/* Since the code of getdate.y is not included in the Emacs executable +/* Since the code of parse-datetime.y is not included in the Emacs executable itself, there is no need to #define static in this file. Even if the code were included in the Emacs executable, it probably wouldn't do any harm to #undef it here; this will only cause @@ -68,6 +67,14 @@ #include "xalloc.h" +/* Bison's skeleton tests _STDLIB_H, while some stdlib.h headers + use _STDLIB_H_ as witness. Map the latter to the one bison uses. */ +/* FIXME: this is temporary. Remove when we have a mechanism to ensure + that the version we're using is fixed, too. */ +#ifdef _STDLIB_H_ +# undef _STDLIB_H +# define _STDLIB_H 1 +#endif /* ISDIGIT differs from isdigit, as follows: - Its arg may be any int or unsigned int; it need not be an unsigned char @@ -712,7 +719,7 @@ static table const universal_time_zone_table[] = /* The time zone table. This table is necessarily incomplete, as time zone abbreviations are ambiguous; e.g. Australians interpret "EST" as Eastern time in Australia, not as US Eastern Standard Time. - You cannot rely on getdate to handle arbitrary time zone + You cannot rely on parse_datetime to handle arbitrary time zone abbreviations; use numeric abbreviations like `-0500' instead. */ static table const time_zone_table[] = { @@ -1112,7 +1119,7 @@ yylex (YYSTYPE *lvalp, parser_control *pc) do { - if (p < buff + sizeof buff - 1) + if (p - buff < sizeof buff - 1) *p++ = c; c = *++pc->input; }