-/* Generated by re2c 0.13.5 on Sat Mar 6 15:46:13 2010 */
+/* Generated by re2c 0.13.5 on Sun Mar 7 13:05:24 2010 */
#line 1 "ext/date/lib/parse_date.re"
/*
+----------------------------------------------------------------------+
#include <stdio.h>
#include <ctype.h>
+#include <math.h>
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
std:
s->tok = cursor;
s->len = 0;
-#line 966 "ext/date/lib/parse_date.re"
+#line 967 "ext/date/lib/parse_date.re"
-#line 848 "ext/date/lib/parse_date.c"
+#line 849 "ext/date/lib/parse_date.c"
{
YYCTYPE yych;
unsigned int yyaccept = 0;
}
yy2:
YYDEBUG(2, *YYCURSOR);
-#line 1051 "ext/date/lib/parse_date.re"
+#line 1052 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("firstdayof | lastdayof");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_LF_DAY_OF_MONTH;
}
-#line 984 "ext/date/lib/parse_date.c"
+#line 985 "ext/date/lib/parse_date.c"
yy3:
YYDEBUG(3, *YYCURSOR);
++YYCURSOR;
}
yy4:
YYDEBUG(4, *YYCURSOR);
-#line 1633 "ext/date/lib/parse_date.re"
+#line 1634 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("tzcorrection | tz");
TIMELIB_DEINIT;
return TIMELIB_TIMEZONE;
}
-#line 1020 "ext/date/lib/parse_date.c"
+#line 1021 "ext/date/lib/parse_date.c"
yy5:
YYDEBUG(5, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '9') goto yy1385;
yy13:
YYDEBUG(13, *YYCURSOR);
-#line 1728 "ext/date/lib/parse_date.re"
+#line 1729 "ext/date/lib/parse_date.re"
{
add_error(s, "Unexpected character");
goto std;
}
-#line 1336 "ext/date/lib/parse_date.c"
+#line 1337 "ext/date/lib/parse_date.c"
yy14:
YYDEBUG(14, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '9') goto yy55;
yy50:
YYDEBUG(50, *YYCURSOR);
-#line 1717 "ext/date/lib/parse_date.re"
+#line 1718 "ext/date/lib/parse_date.re"
{
goto std;
}
-#line 2397 "ext/date/lib/parse_date.c"
+#line 2398 "ext/date/lib/parse_date.c"
yy51:
YYDEBUG(51, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(52, *YYCURSOR);
++YYCURSOR;
YYDEBUG(53, *YYCURSOR);
-#line 1722 "ext/date/lib/parse_date.re"
+#line 1723 "ext/date/lib/parse_date.re"
{
s->pos = cursor; s->line++;
goto std;
}
-#line 2411 "ext/date/lib/parse_date.c"
+#line 2412 "ext/date/lib/parse_date.c"
yy54:
YYDEBUG(54, *YYCURSOR);
yych = *++YYCURSOR;
if (yych == 's') goto yy74;
yy73:
YYDEBUG(73, *YYCURSOR);
-#line 1701 "ext/date/lib/parse_date.re"
+#line 1702 "ext/date/lib/parse_date.re"
{
timelib_ull i;
DEBUG_OUTPUT("relative");
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 2813 "ext/date/lib/parse_date.c"
+#line 2814 "ext/date/lib/parse_date.c"
yy74:
YYDEBUG(74, *YYCURSOR);
yych = *++YYCURSOR;
}
yy168:
YYDEBUG(168, *YYCURSOR);
-#line 1564 "ext/date/lib/parse_date.re"
+#line 1565 "ext/date/lib/parse_date.re"
{
const timelib_relunit* relunit;
DEBUG_OUTPUT("daytext");
TIMELIB_DEINIT;
return TIMELIB_WEEKDAY;
}
-#line 3583 "ext/date/lib/parse_date.c"
+#line 3584 "ext/date/lib/parse_date.c"
yy169:
YYDEBUG(169, *YYCURSOR);
yych = *++YYCURSOR;
}
yy195:
YYDEBUG(195, *YYCURSOR);
-#line 1623 "ext/date/lib/parse_date.re"
+#line 1624 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("monthtext");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_TEXT;
}
-#line 4069 "ext/date/lib/parse_date.c"
+#line 4070 "ext/date/lib/parse_date.c"
yy196:
YYDEBUG(196, *YYCURSOR);
++YYCURSOR;
}
yy200:
YYDEBUG(200, *YYCURSOR);
-#line 1373 "ext/date/lib/parse_date.re"
+#line 1374 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datetextual | datenoyear");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_TEXT;
}
-#line 4132 "ext/date/lib/parse_date.c"
+#line 4133 "ext/date/lib/parse_date.c"
yy201:
YYDEBUG(201, *YYCURSOR);
yyaccept = 6;
}
yy224:
YYDEBUG(224, *YYCURSOR);
-#line 1671 "ext/date/lib/parse_date.re"
+#line 1672 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("dateshortwithtimeshort | dateshortwithtimelong | dateshortwithtimelongtz");
TIMELIB_DEINIT;
return TIMELIB_SHORTDATE_WITH_TIME;
}
-#line 4430 "ext/date/lib/parse_date.c"
+#line 4431 "ext/date/lib/parse_date.c"
yy225:
YYDEBUG(225, *YYCURSOR);
yyaccept = 7;
YYDEBUG(280, *YYCURSOR);
++YYCURSOR;
YYDEBUG(281, *YYCURSOR);
-#line 1647 "ext/date/lib/parse_date.re"
+#line 1648 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("dateshortwithtimeshort12 | dateshortwithtimelong12");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_SHORTDATE_WITH_TIME;
}
-#line 5130 "ext/date/lib/parse_date.c"
+#line 5131 "ext/date/lib/parse_date.c"
yy282:
YYDEBUG(282, *YYCURSOR);
yych = *++YYCURSOR;
++YYCURSOR;
yy297:
YYDEBUG(297, *YYCURSOR);
-#line 1347 "ext/date/lib/parse_date.re"
+#line 1348 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datenoday");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_NO_DAY;
}
-#line 5315 "ext/date/lib/parse_date.c"
+#line 5316 "ext/date/lib/parse_date.c"
yy298:
YYDEBUG(298, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '9') goto yy367;
yy366:
YYDEBUG(366, *YYCURSOR);
-#line 1487 "ext/date/lib/parse_date.re"
+#line 1488 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("pgtextshort");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_PG_TEXT;
}
-#line 6537 "ext/date/lib/parse_date.c"
+#line 6538 "ext/date/lib/parse_date.c"
yy367:
YYDEBUG(367, *YYCURSOR);
yych = *++YYCURSOR;
}
yy393:
YYDEBUG(393, *YYCURSOR);
-#line 1543 "ext/date/lib/parse_date.re"
+#line 1544 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("ago");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_AGO;
}
-#line 7141 "ext/date/lib/parse_date.c"
+#line 7142 "ext/date/lib/parse_date.c"
yy394:
YYDEBUG(394, *YYCURSOR);
yyaccept = 5;
++YYCURSOR;
yy455:
YYDEBUG(455, *YYCURSOR);
-#line 1257 "ext/date/lib/parse_date.re"
+#line 1258 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("iso8601date4 | iso8601date2 | iso8601dateslash | dateslash");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_ISO_DATE;
}
-#line 8837 "ext/date/lib/parse_date.c"
+#line 8838 "ext/date/lib/parse_date.c"
yy456:
YYDEBUG(456, *YYCURSOR);
yyaccept = 0;
}
yy476:
YYDEBUG(476, *YYCURSOR);
-#line 1386 "ext/date/lib/parse_date.re"
+#line 1387 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datenoyearrev");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_TEXT;
}
-#line 9408 "ext/date/lib/parse_date.c"
+#line 9409 "ext/date/lib/parse_date.c"
yy477:
YYDEBUG(477, *YYCURSOR);
yyaccept = 10;
YYDEBUG(488, *YYCURSOR);
++YYCURSOR;
YYDEBUG(489, *YYCURSOR);
-#line 1113 "ext/date/lib/parse_date.re"
+#line 1114 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("timetiny12 | timeshort12 | timelong12");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_TIME12;
}
-#line 9565 "ext/date/lib/parse_date.c"
+#line 9566 "ext/date/lib/parse_date.c"
yy490:
YYDEBUG(490, *YYCURSOR);
yyaccept = 11;
}
yy491:
YYDEBUG(491, *YYCURSOR);
-#line 1150 "ext/date/lib/parse_date.re"
+#line 1151 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("timeshort24 | timelong24 | iso8601long");
TIMELIB_DEINIT;
return TIMELIB_TIME24_WITH_ZONE;
}
-#line 9603 "ext/date/lib/parse_date.c"
+#line 9604 "ext/date/lib/parse_date.c"
yy492:
YYDEBUG(492, *YYCURSOR);
yyaccept = 11;
YYDEBUG(523, *YYCURSOR);
++YYCURSOR;
YYDEBUG(524, *YYCURSOR);
-#line 1130 "ext/date/lib/parse_date.re"
+#line 1131 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("mssqltime");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_TIME24_WITH_ZONE;
}
-#line 9932 "ext/date/lib/parse_date.c"
+#line 9933 "ext/date/lib/parse_date.c"
yy525:
YYDEBUG(525, *YYCURSOR);
yyaccept = 11;
if (yych <= '9') goto yy541;
yy535:
YYDEBUG(535, *YYCURSOR);
-#line 1308 "ext/date/lib/parse_date.re"
+#line 1309 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datefull");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_FULL;
}
-#line 10051 "ext/date/lib/parse_date.c"
+#line 10052 "ext/date/lib/parse_date.c"
yy536:
YYDEBUG(536, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(606, *YYCURSOR);
++YYCURSOR;
YYDEBUG(607, *YYCURSOR);
-#line 1322 "ext/date/lib/parse_date.re"
+#line 1323 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("pointed date YYYY");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_FULL_POINTED;
}
-#line 10799 "ext/date/lib/parse_date.c"
+#line 10800 "ext/date/lib/parse_date.c"
yy608:
YYDEBUG(608, *YYCURSOR);
yyaccept = 11;
if (yych <= '9') goto yy605;
yy612:
YYDEBUG(612, *YYCURSOR);
-#line 1334 "ext/date/lib/parse_date.re"
+#line 1335 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("pointed date YY");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_FULL_POINTED;
}
-#line 10847 "ext/date/lib/parse_date.c"
+#line 10848 "ext/date/lib/parse_date.c"
yy613:
YYDEBUG(613, *YYCURSOR);
yyaccept = 11;
}
yy657:
YYDEBUG(657, *YYCURSOR);
-#line 1295 "ext/date/lib/parse_date.re"
+#line 1296 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("gnudateshort");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_ISO_DATE;
}
-#line 11500 "ext/date/lib/parse_date.c"
+#line 11501 "ext/date/lib/parse_date.c"
yy658:
YYDEBUG(658, *YYCURSOR);
yyaccept = 13;
}
yy667:
YYDEBUG(667, *YYCURSOR);
-#line 1242 "ext/date/lib/parse_date.re"
+#line 1243 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("americanshort | american");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_AMERICAN;
}
-#line 11620 "ext/date/lib/parse_date.c"
+#line 11621 "ext/date/lib/parse_date.c"
yy668:
YYDEBUG(668, *YYCURSOR);
yyaccept = 14;
if (yych <= ':') goto yy704;
yy701:
YYDEBUG(701, *YYCURSOR);
-#line 1513 "ext/date/lib/parse_date.re"
+#line 1514 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("clf");
TIMELIB_DEINIT;
return TIMELIB_CLF;
}
-#line 11873 "ext/date/lib/parse_date.c"
+#line 11874 "ext/date/lib/parse_date.c"
yy702:
YYDEBUG(702, *YYCURSOR);
yych = *++YYCURSOR;
}
yy764:
YYDEBUG(764, *YYCURSOR);
-#line 1269 "ext/date/lib/parse_date.re"
+#line 1270 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("iso8601date2");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_ISO_DATE;
}
-#line 12437 "ext/date/lib/parse_date.c"
+#line 12438 "ext/date/lib/parse_date.c"
yy765:
YYDEBUG(765, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(771, *YYCURSOR);
++YYCURSOR;
YYDEBUG(772, *YYCURSOR);
-#line 1500 "ext/date/lib/parse_date.re"
+#line 1501 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("pgtextreverse");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_PG_TEXT;
}
-#line 12488 "ext/date/lib/parse_date.c"
+#line 12489 "ext/date/lib/parse_date.c"
yy773:
YYDEBUG(773, *YYCURSOR);
yych = *++YYCURSOR;
}
yy784:
YYDEBUG(784, *YYCURSOR);
-#line 1534 "ext/date/lib/parse_date.re"
+#line 1535 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("year4");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_CLF;
}
-#line 12634 "ext/date/lib/parse_date.c"
+#line 12635 "ext/date/lib/parse_date.c"
yy785:
YYDEBUG(785, *YYCURSOR);
yych = *++YYCURSOR;
}
yy794:
YYDEBUG(794, *YYCURSOR);
-#line 1360 "ext/date/lib/parse_date.re"
+#line 1361 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datenodayrev");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_NO_DAY;
}
-#line 12797 "ext/date/lib/parse_date.c"
+#line 12798 "ext/date/lib/parse_date.c"
yy795:
YYDEBUG(795, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '7') goto yy817;
yy815:
YYDEBUG(815, *YYCURSOR);
-#line 1468 "ext/date/lib/parse_date.re"
+#line 1469 "ext/date/lib/parse_date.re"
{
timelib_sll w, d;
DEBUG_OUTPUT("isoweek");
TIMELIB_DEINIT;
return TIMELIB_ISO_WEEK;
}
-#line 13030 "ext/date/lib/parse_date.c"
+#line 13031 "ext/date/lib/parse_date.c"
yy816:
YYDEBUG(816, *YYCURSOR);
yych = *++YYCURSOR;
YYDEBUG(817, *YYCURSOR);
++YYCURSOR;
YYDEBUG(818, *YYCURSOR);
-#line 1449 "ext/date/lib/parse_date.re"
+#line 1450 "ext/date/lib/parse_date.re"
{
timelib_sll w, d;
DEBUG_OUTPUT("isoweekday");
TIMELIB_DEINIT;
return TIMELIB_ISO_WEEK;
}
-#line 13058 "ext/date/lib/parse_date.c"
+#line 13059 "ext/date/lib/parse_date.c"
yy819:
YYDEBUG(819, *YYCURSOR);
yych = *++YYCURSOR;
}
yy822:
YYDEBUG(822, *YYCURSOR);
-#line 1436 "ext/date/lib/parse_date.re"
+#line 1437 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("pgydotd");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_PG_YEARDAY;
}
-#line 13134 "ext/date/lib/parse_date.c"
+#line 13135 "ext/date/lib/parse_date.c"
yy823:
YYDEBUG(823, *YYCURSOR);
yych = *++YYCURSOR;
++YYCURSOR;
yy843:
YYDEBUG(843, *YYCURSOR);
-#line 1410 "ext/date/lib/parse_date.re"
+#line 1411 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("xmlrpc | xmlrpcnocolon | soap | wddx | exif");
TIMELIB_DEINIT;
return TIMELIB_XMLRPC_SOAP;
}
-#line 13262 "ext/date/lib/parse_date.c"
+#line 13263 "ext/date/lib/parse_date.c"
yy844:
YYDEBUG(844, *YYCURSOR);
yych = *++YYCURSOR;
}
yy849:
YYDEBUG(849, *YYCURSOR);
-#line 1398 "ext/date/lib/parse_date.re"
+#line 1399 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("datenocolon");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_DATE_NOCOLON;
}
-#line 13535 "ext/date/lib/parse_date.c"
+#line 13536 "ext/date/lib/parse_date.c"
yy850:
YYDEBUG(850, *YYCURSOR);
yych = *++YYCURSOR;
if (yych <= '9') goto yy996;
yy974:
YYDEBUG(974, *YYCURSOR);
-#line 1282 "ext/date/lib/parse_date.re"
+#line 1283 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("gnudateshorter");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_ISO_DATE;
}
-#line 14467 "ext/date/lib/parse_date.c"
+#line 14468 "ext/date/lib/parse_date.c"
yy975:
YYDEBUG(975, *YYCURSOR);
yyaccept = 22;
}
yy1068:
YYDEBUG(1068, *YYCURSOR);
-#line 1176 "ext/date/lib/parse_date.re"
+#line 1177 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("gnunocolon");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_GNU_NOCOLON;
}
-#line 15498 "ext/date/lib/parse_date.c"
+#line 15499 "ext/date/lib/parse_date.c"
yy1069:
YYDEBUG(1069, *YYCURSOR);
yych = *++YYCURSOR;
}
yy1076:
YYDEBUG(1076, *YYCURSOR);
-#line 1222 "ext/date/lib/parse_date.re"
+#line 1223 "ext/date/lib/parse_date.re"
{
int tz_not_found;
DEBUG_OUTPUT("iso8601nocolon");
TIMELIB_DEINIT;
return TIMELIB_ISO_NOCOLON;
}
-#line 15609 "ext/date/lib/parse_date.c"
+#line 15610 "ext/date/lib/parse_date.c"
yy1077:
YYDEBUG(1077, *YYCURSOR);
yyaccept = 25;
}
yy1118:
YYDEBUG(1118, *YYCURSOR);
-#line 1606 "ext/date/lib/parse_date.re"
+#line 1607 "ext/date/lib/parse_date.re"
{
timelib_sll i;
int behavior = 0;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 16523 "ext/date/lib/parse_date.c"
+#line 16524 "ext/date/lib/parse_date.c"
yy1119:
YYDEBUG(1119, *YYCURSOR);
++YYCURSOR;
YYDEBUG(1126, *YYCURSOR);
++YYCURSOR;
YYDEBUG(1127, *YYCURSOR);
-#line 1091 "ext/date/lib/parse_date.re"
+#line 1092 "ext/date/lib/parse_date.re"
{
timelib_sll i;
int behavior = 0;
TIMELIB_DEINIT;
return TIMELIB_WEEK_DAY_OF_MONTH;
}
-#line 16595 "ext/date/lib/parse_date.c"
+#line 16596 "ext/date/lib/parse_date.c"
yy1128:
YYDEBUG(1128, *YYCURSOR);
yyaccept = 26;
}
yy1142:
YYDEBUG(1142, *YYCURSOR);
-#line 1582 "ext/date/lib/parse_date.re"
+#line 1583 "ext/date/lib/parse_date.re"
{
timelib_sll i;
int behavior = 0;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 16726 "ext/date/lib/parse_date.c"
+#line 16727 "ext/date/lib/parse_date.c"
yy1143:
YYDEBUG(1143, *YYCURSOR);
yych = *++YYCURSOR;
goto yy1298;
yy1295:
YYDEBUG(1295, *YYCURSOR);
-#line 1068 "ext/date/lib/parse_date.re"
+#line 1069 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("backof | frontof");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_LF_DAY_OF_MONTH;
}
-#line 19234 "ext/date/lib/parse_date.c"
+#line 19235 "ext/date/lib/parse_date.c"
yy1296:
YYDEBUG(1296, *YYCURSOR);
yyaccept = 28;
if (yych <= '9') goto yy1385;
yy1387:
YYDEBUG(1387, *YYCURSOR);
-#line 1026 "ext/date/lib/parse_date.re"
+#line 1027 "ext/date/lib/parse_date.re"
{
timelib_ull i;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 20824 "ext/date/lib/parse_date.c"
+#line 20825 "ext/date/lib/parse_date.c"
yy1388:
YYDEBUG(1388, *YYCURSOR);
yych = *++YYCURSOR;
++YYCURSOR;
yy1417:
YYDEBUG(1417, *YYCURSOR);
-#line 1014 "ext/date/lib/parse_date.re"
+#line 1015 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("tomorrow");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 21271 "ext/date/lib/parse_date.c"
+#line 21272 "ext/date/lib/parse_date.c"
yy1418:
YYDEBUG(1418, *YYCURSOR);
yych = *++YYCURSOR;
}
yy1420:
YYDEBUG(1420, *YYCURSOR);
-#line 1004 "ext/date/lib/parse_date.re"
+#line 1005 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("midnight | today");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 21315 "ext/date/lib/parse_date.c"
+#line 21316 "ext/date/lib/parse_date.c"
yy1421:
YYDEBUG(1421, *YYCURSOR);
yych = *++YYCURSOR;
}
yy1500:
YYDEBUG(1500, *YYCURSOR);
-#line 983 "ext/date/lib/parse_date.re"
+#line 984 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("now");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 23147 "ext/date/lib/parse_date.c"
+#line 23148 "ext/date/lib/parse_date.c"
yy1501:
YYDEBUG(1501, *YYCURSOR);
yych = *++YYCURSOR;
}
yy1508:
YYDEBUG(1508, *YYCURSOR);
-#line 992 "ext/date/lib/parse_date.re"
+#line 993 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("noon");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 23297 "ext/date/lib/parse_date.c"
+#line 23298 "ext/date/lib/parse_date.c"
yy1509:
YYDEBUG(1509, *YYCURSOR);
yyaccept = 0;
++YYCURSOR;
yy1531:
YYDEBUG(1531, *YYCURSOR);
-#line 971 "ext/date/lib/parse_date.re"
+#line 972 "ext/date/lib/parse_date.re"
{
DEBUG_OUTPUT("yesterday");
TIMELIB_INIT;
TIMELIB_DEINIT;
return TIMELIB_RELATIVE;
}
-#line 23788 "ext/date/lib/parse_date.c"
+#line 23789 "ext/date/lib/parse_date.c"
yy1532:
YYDEBUG(1532, *YYCURSOR);
yyaccept = 0;
goto yy1531;
}
}
-#line 1732 "ext/date/lib/parse_date.re"
+#line 1733 "ext/date/lib/parse_date.re"
}
TIMELIB_CHECK_NUMBER;
tptr = ptr;
- if ((f = timelib_get_nr((char **) &ptr, 6)) == TIMELIB_UNSET || ptr - tptr != 6) {
+ if ((f = timelib_get_nr((char **) &ptr, 6)) == TIMELIB_UNSET || (ptr - tptr < 1)) {
add_pbf_error(s, "A six digit millisecond could not be found", string, begin);
} else {
- s->time->f = (f / 1000000);
+ s->time->f = (f / pow(10, (ptr - tptr)));
}
}
break;