From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | pgsql-hackers(at)postgreSQL(dot)org, pgsql-hackers-win32(at)postgreSQL(dot)org |
Subject: | timezone vs _timezone on Windows |
Date: | 2004-09-01 15:33:24 |
Message-ID: | 7015.1094052804@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers pgsql-hackers-win32 |
I think I see the real issue behind the recent argument about the
datatype of the timezone variable. I don't think the datatype matters,
but the name certainly does. In pgtz.c we have
#if defined(HAVE_STRUCT_TM_TM_ZONE)
return tm->tm_gmtoff;
#elif defined(HAVE_INT_TIMEZONE)
#ifdef HAVE_UNDERSCORE_TIMEZONE
return -_timezone;
#else
return -timezone;
#endif
#else
#error No way to determine TZ? Can this happen?
#endif
but the symbol HAVE_UNDERSCORE_TIMEZONE appears nowhere else ---
certainly it's not set by configure, and never has been. So the
"_timezone" case is dead code at the moment.
In 7.4, pg_config_manual.h contained
/*
* Define this if your operating system has _timezone rather than timezone
*/
#if defined(__CYGWIN__) || defined(WIN32)
#define HAVE_INT_TIMEZONE /* has int _timezone */
#define HAVE_UNDERSCORE_TIMEZONE 1
#endif
but this passage has disappeared from CVS tip. So given a platform that
has "_timezone" but not "timezone", CVS tip is broken.
I am wondering how changing this would affect the existing, allegedly
working Windows port. Should we put back the pg_config_manual.h entry?
Should we restrict it to __CYGWIN__ only?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Hannu Krosing | 2004-09-01 15:34:32 | Re: version upgrade |
Previous Message | G u i d o B a r o s i o | 2004-09-01 15:07:39 | Re: slower every day |
From | Date | Subject | |
---|---|---|---|
Next Message | Vidyasagara Guntaka | 2004-09-01 18:15:09 | Linking Win32 applications with libpq |
Previous Message | Philip Warner | 2004-09-01 12:52:12 | Re: open item: tablespace handing in |