Craig A. Berry [Sat, 21 Feb 2009 04:58:55 +0000 (22:58 -0600)]
The y2038 code currently requires that a 64-bit integer type be available,
so the build falls down hard if we try to use it where there isn't one. A
better fix might be to try NV for time_t and a 32-bit integer for year.
N.B. We test for the definedness of Quad_t rather than HAS_QUAD since the
latter is explicitly undef'd in the case where 64-bit types are available
but are not being used for Perl's IV and UV.
#include "EXTERN.h"
#define PERL_IN_PP_SYS_C
#include "perl.h"
-#ifndef PERL_MICRO
+#if !defined(PERL_MICRO) && defined(Quad_t)
# include "time64.h"
# include "time64.c"
#endif
{
dVAR;
dSP;
-#ifdef PERL_MICRO
+#if defined(PERL_MICRO) || !defined(Quad_t)
Time_t when;
const struct tm *err;
struct tm tmbuf;
{"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"};
-#ifdef PERL_MICRO
+#if defined(PERL_MICRO) || !defined(Quad_t)
if (MAXARG < 1)
(void)time(&when);
else