summaryrefslogtreecommitdiff
path: root/ext/date/lib/timelib_structs.h
diff options
context:
space:
mode:
authorDerick Rethans <github@derickrethans.nl>2016-10-05 11:24:15 -0400
committerDerick Rethans <github@derickrethans.nl>2016-10-05 15:03:06 -0400
commit55626549d81d0feadb1d160be78fcf2b898a48cc (patch)
treea00c6239804f2ad68ccc3470e63e83eb18f7897f /ext/date/lib/timelib_structs.h
parentd5b77d66626b138a83b6c0d16f746893fefa29ee (diff)
downloadphp-git-microseconds.tar.gz
Improve support for microseconds with Date/Timemicroseconds
It fixes several bugs: - Fixed bug #45554 (Inconsistent behavior of the u format char). - Fixed bug #48225 (DateTime parser doesn't set microseconds for "now"). - Fixed bug #52514 (microseconds are missing in DateTime class). - Fixed bug #52519 (microseconds in DateInterval are missing). - Fixed bug #68506 (General DateTime improvments needed for microseconds to become useful). - Fixed bug #73109 (timelib_meridian doesn't parse dots correctly). - Fixed bug #73247 (DateTime constructor does not initialise microseconds property). It also updates timelib to 2016.04, and updates a data mapping file, which causes changes to the volatile abbreviations tests.
Diffstat (limited to 'ext/date/lib/timelib_structs.h')
-rw-r--r--ext/date/lib/timelib_structs.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/date/lib/timelib_structs.h b/ext/date/lib/timelib_structs.h
index d38175753a..4256dd4f6f 100644
--- a/ext/date/lib/timelib_structs.h
+++ b/ext/date/lib/timelib_structs.h
@@ -125,7 +125,7 @@ typedef unsigned __int64 uint64_t;
#include <strings.h>
#endif
-#if defined(__x86_64__) || defined(__LP64__) || defined(_LP64) || defined(_WIN64)
+#if (defined(__x86_64__) || defined(__LP64__) || defined(_LP64) || defined(_WIN64)) && !defined(TIMELIB_FORCE_LONG32)
typedef int64_t timelib_long;
typedef uint64_t timelib_ulong;
# define TIMELIB_LONG_MAX INT64_MAX
@@ -216,6 +216,7 @@ typedef struct timelib_special {
typedef struct timelib_rel_time {
timelib_sll y, m, d; /* Years, Months and Days */
timelib_sll h, i, s; /* Hours, mInutes and Seconds */
+ double f; /* Fraction */
int weekday; /* Stores the day in 'next monday' */
int weekday_behavior; /* 0: the current day should *not* be counted when advancing forwards; 1: the current day *should* be counted */