Обсуждение: cvs head compile failure
I'm getting an ecpg related compile failure on cvs tip: gcc -O2 -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -I../../../../src/interfaces/ecpg/include -I../../../../src/include/utils -I../../../../src/include -g -c -o timestamp.o timestamp.c -MMD timestamp.c: In function `dttofmtasc_replace': timestamp.c:549: union has no member named `replace_int64' make[4]: *** [timestamp.o] Error 1 make[4]: Leaving directory `/opt/src/pgsql/src/interfaces/ecpg/pgtypeslib' Joe
Joe Conway wrote:
> I'm getting an ecpg related compile failure on cvs tip:
>
> gcc -O2 -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic
> -I../../../../src/interfaces/ecpg/include
> -I../../../../src/include/utils -I../../../../src/include -g -c -o
> timestamp.o timestamp.c -MMD
> timestamp.c: In function `dttofmtasc_replace':
> timestamp.c:549: union has no member named `replace_int64'
> make[4]: *** [timestamp.o] Error 1
> make[4]: Leaving directory `/opt/src/pgsql/src/interfaces/ecpg/pgtypeslib'
>
Looks like a simple matter of replacing "replace_int64" with "int64_val"
at line 549 in src/interfaces/ecpg/pgtypeslib/timestamp.c
Joe
Index: src/interfaces/ecpg/pgtypeslib/timestamp.c
===================================================================
RCS file: /opt/src/cvs/pgsql-server/src/interfaces/ecpg/pgtypeslib/timestamp.c,v
retrieving revision 1.11
diff -c -r1.11 timestamp.c
*** src/interfaces/ecpg/pgtypeslib/timestamp.c 1 Aug 2003 08:21:04 -0000 1.11
--- src/interfaces/ecpg/pgtypeslib/timestamp.c 1 Aug 2003 17:57:11 -0000
***************
*** 546,552 ****
break;
case 's':
#ifdef HAVE_INT64_TIMESTAMP
! replace_val.replace_int64 = ((*ts - SetEpochTimestamp()) / 1000000e0);
replace_type = PGTYPES_TYPE_INT64;
#else
replace_val.double_val = *ts - SetEpochTimestamp();
--- 546,552 ----
break;
case 's':
#ifdef HAVE_INT64_TIMESTAMP
! replace_val.int64_val = ((*ts - SetEpochTimestamp()) / 1000000e0);
replace_type = PGTYPES_TYPE_INT64;
#else
replace_val.double_val = *ts - SetEpochTimestamp();
On Fri, Aug 01, 2003 at 10:22:59AM -0700, Joe Conway wrote: > Looks like a simple matter of replacing "replace_int64" with "int64_val" > at line 549 in src/interfaces/ecpg/pgtypeslib/timestamp.c Yes, it is. Thanks. I didn't have HAVE_INT64_TIMESTAMP defined. In fact there's another one in common.c with an incorrect #define. It's fixed now. Michael -- Michael Meskes Email: Michael at Fam-Meskes dot De ICQ: 179140304, AIM: michaelmeskes, Jabber: meskes@jabber.org Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!