Search Postgresql Archives

ECPG problem with 8.3

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I've just tried compiling our project against the 8.3RC1 code. This is the first time I've tried any release of 8.3.

Several components use ECPG. I'm now getting an ECPG error. Compiling on 8.2.3 is fine. I've checked the 8.3 release documentation and there don't seem to be any that change the ECPG interface - all the changes seem to be behind the scenes. The biggest being a change to the backend protocol.

# gcc --version
gcc (GCC) 3.4.2 20041017 (Red Hat 3.4.2-6.fc3)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

# /usr/local/pgsql/bin/ecpg --version
ecpg (PostgreSQL 8.3RC1) 4.4.0

----- The error :
# make
make[1]: Entering directory `/var/build/whitebeam/templates/pgsql/common'
/usr/local/pgsql/bin/ecpg -t -o crbembsql.cxx -I /usr/local/pgsql/include crbembsql.pgC
g++    -c crbembsql.cxx -o crbembsql.o
g++ -c -g -O2 -I/var/build/whitebeam/include -DHAVE_CONFIG_H -I/usr/local/pgsql/include -I/usr/local/pgsql/include/server -I/var/build/whitebeam/common -I/var/build/whitebeam/presentation -I/usr/include/openssl -I/usr/local/pgsql/include -I /var/build/whitebeam/templates -I ../common crbembsql.cxx -o crbembsql.o crbembsql.pgC: In member function `BOOL crbembsql::gensql(const char*, int, BOOL, CrbString*)':
crbembsql.pgC:254: error: invalid conversion from `int' to `ECPG_statement_type'
crbembsql.pgC:254: error: initializing argument 6 of `bool ECPGdo(int, int, int, const char*, char, ECPG_statement_type, const char*, ...)'
make[1]: *** [crbembsql.o] Error 1
make[1]: Leaving directory `/var/build/whitebeam/templates/pgsql/common'
make: *** [all] Error 2

------- The relevant lines in crbembsql.pgQ - the second is line 254
    EXEC SQL PREPARE U1 FROM :sl_sql;
    EXEC SQL EXECUTE U1;

------- The output for those lines from the ECPG preprocessor :
    { ECPGprepare(__LINE__, NULL, 0, "u1", sl_sql);}
#line 253 "crbembsql.pgC"

    { ECPGdo(__LINE__, 0, 1, NULL, 0, 1, "u1", ECPGt_EOIT, ECPGt_EORT);}
#line 254 "crbembsql.pgC"

----------- PROTOTYPE for ECPGdo taken from /usr/local/pgsql/include/ecpglib.h bool ECPGdo(const int, const int, const int, const char *, const char, const enum ECPG_statement_type, const char *,...);
----------
The changes to the ECPGdo prototype were made during 8.3 development (REL8_2_STABLE) and were checked in 2007/08/14 (version 1.71 of ecpglib.h) by user 'meskes'.

----------
Any suggestions very much appreciated!

Peter Wilson
--
http://www.whitebeam.org - OpenSource Web Application Server

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

              http://www.postgresql.org/docs/faq

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux