Re: cleanup of cbrt() handling

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: cleanup of cbrt() handling
Date: 2003-05-26 00:45:26
Message-ID: 200305260045.h4Q0jQr17776@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

Tom Lane wrote:
> Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> writes:
> > #ifndef HAVE_CBRT
> > #define cbrt my_cbrt
> > static double cbrt(double x);
>
> > #else
> > #if !defined(nextstep)
> > extern double cbrt(double x);
> > #endif
> > #endif /* HAVE_CBRT */
>
> > There is no my_cbrt() function, meaning anyone who didn't have cbrt
> > couldn't have even compiled 7.3, so I think we should just remove
> > cbrt,
>
> No, you're misreading the point of the code. The #define changes the
> spelling of the static declaration. The idea evidently is to make sure
> that there is no conflict of the static function against a library
> cbrt(), on the off chance that configure missed finding it somehow.
> This might be overly tricky --- certainly we do not take comparable
> precautions for other library-substitute functions. I wouldn't object
> to removing the "#define cbrt my_cbrt". But you have *no* proof that
> removing the whole thing won't break some supported platform.

Oh, I see, it makes all cbrt cases by my_cbrt, including the function
calls _and_ function definition. I already removed my_cbrt, so let's
see how it works in 7.4.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

In response to

Browse pgsql-patches by date

  From Date Subject
Next Message Bruce Momjian 2003-05-26 02:25:37 Re: IS OF
Previous Message Tom Lane 2003-05-25 17:52:23 Re: array support patch phase 1 patch