On 4/26/07, Michael Meskes <[EMAIL PROTECTED]> wrote:
On Wed, Apr 25, 2007 at 04:38:30PM -0400, Tom Lane wrote:
> My recommendation is to get rid of the APREF hack, deal only in
> va_list not &va_list, and inline ECPGget_variable into the two
> places it's used to avoid the question of passing va_lists around
> after they've been modified. The routine's not that big (especially
> seeing that only half of it is actually shared by the two callers)
> and it's just not worth the notational effort, let alone any portability
> risks, to factor it out.
Having spend countless hours debugging this stuff I fully agree with
you. It's not just ECPGget_variable though. I also had to inline
create_statement. This is only called once, so no big deal, but the
calling function gets bigger by quite a margin that way. It was
definitely easier to read with these functions, but again all this
hassle isn't worth it.
Attached you'll find a patch that should inline both functions and
remove the APREF stuff. This successfully runs the regression suite on
my Linux box. Please test it on those archs that needed special
treatment before I commit.
I applied it to REL8_2_STABLE/pgsql and ran 'run_build.pl --test
--keepall REL8_2_STABLE'. Looks like it passed everything for me. :)
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not