summaryrefslogtreecommitdiff
path: root/time64.c
Commit message (Collapse)AuthorAgeFilesLines
* pp.c and time64.c don't need to be executableVincent Pit2009-05-141-0/+0
|
* Make time64 use NV for time_t, I32 for year, not Quad_t.Craig A. Berry2009-04-251-10/+10
| | | | | | | This means it should run on anything that does not have a 64-bit integer type available but does have a double. Presumably this includes platforms that define PERL_MICRO, so we now use the same extended time implementation for everything that runs Perl.
* Forgot one "static" in 7430375d1909c2b62c1fb3f9c6ed4b9d24dfcf32.Craig A. Berry2009-03-271-1/+1
|
* Remove unused function S_copy_big_TM_to_little_tm from time64.c.Craig A. Berry2009-03-261-32/+0
|
* Namespace clean-up for time64.Craig A. Berry2009-03-261-44/+46
| | | | | | | | | | | | | | | | | | | | All of the time64 functions are only visible within pp_sys.c and are not part of the public API, so make them all static and give them the S_ prefix. A side effect of this is that we now unambiguously use S_localtime64_r and S_gmtime64_r and should no longer collide with system-supplied versions, if any. One possible future direction is that if and when Configure detects any system-supplied *time64_r functions, their prototypes, and their valid time ranges, we could optionally select those instead of the home-grown ones. Another possible future direction is that we could s/S_/Perl_/ and make the *time64_r functions part of the public API in some post-5.10.x release. Currently they are only exposed to the outside world via Perl_pp_gmtime. Also gave some TRACE macros more specific names.
* Silence time64.c build warningJerry D. Hedden2009-01-131-0/+2
| | | | | | | Silence the following build warning: time64.c:169: warning: 'check_tm' defined but not used Message-ID: <1ff86f510901081219q4f5f25a3od89c4e5ac03e8664@mail.gmail.com>
* Silence Win32 compiler warnings.Steve Hay2009-01-131-3/+3
|
* fake_localtime_r and fake_gmtime_r may need thread context.Craig A. Berry2009-01-091-0/+2
| | | | They definitely need it on VMS.
* Make time64.c's internal copy function names more readable and VMS-friendly.Craig A. Berry2009-01-041-5/+5
|
* Update from y2038Michael G. Schwern2009-01-031-12/+17
| | | | | | Fix trailing #endif. Remove C99 macro.
* Update from y2038.Michael G. Schwern2009-01-031-14/+27
| | | | | | | | | | | Add trace code. Fix implied negative time in localtie64_r(). This fixes Windows. Put in some more tests around small negative and positive times to try and catch the above. Explain the loss of accuracy due to use of doubles in perlport.
* Update from y2038Michael G. Schwern2009-01-031-17/+28
| | | | | | | | | | | | Configuration information split out into its own header. Added files to MANIFEST Turn off USE_SYSTEM_GMTIME, ours is more reliable and possibly faster. Fix type warnings found on Windows. Remove unnecessary use of floor() and ceil().
* Remove the AIX work around code. Instead it should just set it's ↵Michael G. Schwern2009-01-031-36/+107
| | | | | | | | | | | | | | | | | LOCALTIME_MAX to 0x7fff573e. Update from y2038. Use the new TM64 struct so years can go out past y2**31 Defines a Year type to avoid converting years to ints. Remove the TIMGM work around code, using timegm64() is fine and it saves us from having to convert from TM to tm. Make functions private with static rather than the _foo convention. Even faster for distant dates.
* Rename localtime64.[ch] to time64.[ch] to mirror change in y2038, and the ↵Michael G. Schwern2009-01-031-0/+481
file isn't about just localtime() anymore.