The following bug has been logged online:
Bug reference: 3623
Logged by: Guenter Abraham
Email address: abraham@itbb.de
PostgreSQL version: 8.2
Operating system: winxp
Description: initialisation probl.
Details:
formerly stable programs being generated by ecpg suddenly terminates while
initialization at 0xc0000022
this small program demonstrates the effect:
///-- [
#include <stdio.h>
int main(int argc,char *argv[]) {
printf("tach\n");
return 0;
}
#ifdef ABRAUCH
#include "ecpglib.h"
void nothing(void)
{ ECPGtrans(__LINE__, NULL, "commit");}
#endif
/// -- ]
it terminates while initialization if ABRAUCH is defined. the function
"nothing" is NOT called!!
I'm using mingw:
gcc -v [:Reading specs from
d:/programme/mingw/bin/../lib/gcc/mingw32/3.4.2/specs
Configured with: ../gcc/configure --with-gcc --with-gnu-ld --with-gnu-as
--host=mingw32 --target=mingw32 --prefix=/mingw --enable-threads
--disable-nls --enable-languages=c,c++,f77,ada,objc,java
--disable-win32-registry --disable-shared --enable-sjlj-exceptions
--enable-libgcj --disable-java-awt --without-x --enable-java-gc=boehm
--disable-libgcj-debug --enable-interpreter --enable-hash-synchronization
--enable-libstdcxx-debug
Thread model: win32
gcc version 3.4.2 (mingw-special)
]
I use this generating script [
#
gcc -mno-cygwin -g -c -Wall \ -Id:/Programme/PostgreSQL/8.2/include tst.cc
gcc -g -o tst1.exe tst.o \
D:/lib/libecpg.dll \
-lstdc++
#
gcc -mno-cygwin -DABRAUCH= -g -c -Wall \
-Id:/Programme/PostgreSQL/8.2/include tst.cc
gcc -g -o tst2.exe tst.o \
D:/lib/libecpg.dll \
-lstdc++
]
the effect occures also at pg vers 8.1
with kind regards guenter