cvs head compile failure

Started by Joe Conwayover 22 years ago3 messages
#1Joe Conway
mail@joeconway.com

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

#2Joe Conway
mail@joeconway.com
In reply to: Joe Conway (#1)
1 attachment(s)
Re: cvs head compile failure

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

Attachments:

ecpgfix.patchtext/plain; name=ecpgfix.patchDownload
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();
#3Michael Meskes
meskes@postgresql.org
In reply to: Joe Conway (#2)
Re: cvs head compile failure

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!