NetBSD/dtime_t
Could anyone please tell me how NetBSD defines dtime_t? We have a
buildfarm failure on canary. I know which change triggered this. I
enabled
typedef timestamp dtime_t;
Which was mishandled by ecpg in Informix mode before and didn't work at
all if you were using the data type.
Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go VfL Borussia! Go SF 49ers! Use Debian GNU/Linux! Use PostgreSQL!
On Fri, 15 Feb 2008, Michael Meskes wrote:
Could anyone please tell me how NetBSD defines dtime_t? We have a
buildfarm failure on canary.
/usr/include/sys/types.h says:
typedef int32_t dtime_t; /* on-disk time_t */
Kris Jurka
On Fri, Feb 15, 2008 at 05:07:17PM -0500, Kris Jurka wrote:
Could anyone please tell me how NetBSD defines dtime_t? We have a
buildfarm failure on canary./usr/include/sys/types.h says:
typedef int32_t dtime_t; /* on-disk time_t */
Thanks. I wonder why they define this datatype. I didn't find it on any
other architecture.
Anyway, does anyone have a suggestion how to solve this issue? Informix
uses the dtime_t datatype to store a timestamp. pgtypeslib also defines
a timestamp type which is 64 bit and not 32 bit like the NetBSD one.
Informix compatibility now typedefs dtime_t to timestamp so the
functions with Informix syntax work as advertized.
If I do not define this datatype, Informix compatibility will not work,
if I define it, NetBSD is not able to compile to regression tests. Of
course we can work around the regression test problem, but a user using
the Informix compatibility feature on NetBSD will run into the same
problem.
Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go VfL Borussia! Go SF 49ers! Use Debian GNU/Linux! Use PostgreSQL!
Michael Meskes <meskes@postgresql.org> writes:
Anyway, does anyone have a suggestion how to solve this issue? Informix
uses the dtime_t datatype to store a timestamp. pgtypeslib also defines
a timestamp type which is 64 bit and not 32 bit like the NetBSD one.
Informix compatibility now typedefs dtime_t to timestamp so the
functions with Informix syntax work as advertized.
Does it have to be a typedef, rather than a #define?
I'm thinking that you could forcibly include sys/types.h
and then it would be safe to #define dtime_t the way you want.
regards, tom lane
On Sat, Feb 16, 2008 at 09:15:24AM -0500, Tom Lane wrote:
Does it have to be a typedef, rather than a #define?
I'm thinking that you could forcibly include sys/types.h
and then it would be safe to #define dtime_t the way you want.
I just committed a patch that does more or less what you suggest.
Instead of #define'ing dtimt_t I let ecpg handle this. this actually is
code that was part of ecpg before I just put it back in and changed the
other header files some. Let's see if this helps.
Michael
--
Michael Meskes
Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go VfL Borussia! Go SF 49ers! Use Debian GNU/Linux! Use PostgreSQL!