Re: ECPG failure on BF member Vaquita (Windows Vista) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: ECPG failure on BF member Vaquita (Windows Vista)
Date
Msg-id 4046.1177528639@sss.pgh.pa.us
Whole thread Raw
In response to Re: ECPG failure on BF member Vaquita (Windows Vista)  ("Mark Wong" <markwkm@gmail.com>)
Responses Re: ECPG failure on BF member Vaquita (Windows Vista)  ("Mark Wong" <markwkm@gmail.com>)
Re: ECPG failure on BF member Vaquita (Windows Vista)  (Andrew Dunstan <andrew@dunslane.net>)
Re: ECPG failure on BF member Vaquita (Windows Vista)  (Michael Meskes <meskes@postgresql.org>)
List pgsql-hackers
"Mark Wong" <markwkm@gmail.com> writes:
> Does this help?

> (gdb) p var->ind_pointer
> $8 = (void *) 0x0

Well, that seems to be the reason why it's failing to indirect through
ind_pointer ... but why is it only failing on your machine and not
everyone else's?  I think this indicates something unportable about
ecpg's usage of va_list.

Hmm, and I don't have to look far to find a smoking gun:

#if defined(__GNUC__) && (defined (__powerpc__) || defined(__amd64__) || defined(__x86_64__))if
(create_statement(lineno,compat, force_indicator, con, &stmt, query, args) == false)
 
#elseif (create_statement(lineno, compat, force_indicator, con, &stmt, query, &args) == false)
#endif

Why in the world is that like that?  We don't have such a kluge
anyplace else we use va_list.  stringinfo.c for instance has
never needed any such thing.

Mark, does your gcc define __powerpc__, or only __powerpc64__?
        regards, tom lane


pgsql-hackers by date:

Previous
From: Stefan Kaltenbrunner
Date:
Subject: Re: strange buildfarm failures
Next
From: "Mark Wong"
Date:
Subject: Re: ECPG failure on BF member Vaquita (Windows Vista)