Re: float4/float8/int64 passed by value with tsearch fixup - Mailing list pgsql-patches

From Alvaro Herrera
Subject Re: float4/float8/int64 passed by value with tsearch fixup
Date
Msg-id 20080418192304.GF572@alvh.no-ip.org
Whole thread Raw
In response to Re: float4/float8/int64 passed by value with tsearch fixup  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: float4/float8/int64 passed by value with tsearch fixup  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-patches
Tom Lane wrote:
> Alvaro Herrera <alvherre@commandprompt.com> writes:
> > I assume this is just some dumb portability mistake on my part ... or
> > perhaps the fact that the functions are still using v0 fmgr convention?
>
> Since they're v0, they'd have to explicitly know about the pass-by-ref
> status of float4.

Well, the previous code was doing some pallocs, and the new code is not:
http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/contrib/seg/seg.c.diff?r1=1.20;r2=1.21


> Did this patch include a compile-time choice of whether things could
> remain pass-by-ref?  I rather imagine that some people out there will
> prefer to stay that way instead of fix their old v0 code.

Hmm, nope.  Do we really need that?

I understand the backwards-compatibility argument, yet I wonder if it's
worth the extra effort and code complexity.

> In the meantime, converting contrib/seg to v1 might be the best
> solution.

Will do.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: float4/float8/int64 passed by value with tsearch fixup
Next
From: Tom Lane
Date:
Subject: Re: float4/float8/int64 passed by value with tsearch fixup