Re: InvalidOid & C++ - Mailing list pgsql-patches

From Nigel J. Andrews
Subject Re: InvalidOid & C++
Date
Msg-id Pine.LNX.4.21.0303180150360.2462-100000@ponder.fairway2k.co.uk
Whole thread Raw
In response to Re: InvalidOid & C++  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: InvalidOid & C++  ("Jeroen T. Vermeulen" <jtv@xs4all.nl>)
List pgsql-patches
On Mon, 17 Mar 2003, Bruce Momjian wrote:

>
> How widespread is Oid(0) in C++?  I have never seen anything like that.
> It looks like a function call!

It is, sort of, probably. Looks like a constructor of an instance of type
Oid. Certainly valid C++ I think, at least I'm sure something like
int(0) should work but then this is trawling through my memory somewhat.

As I don't know anything about this old style cast warning I can't say which is
supposed to be more acceptable.

>
> ---------------------------------------------------------------------------
>
> Jeroen T. Vermeulen wrote:
> > Compiling anything that uses InvalidOid under g++ yields a warning about
> > the expression using an "old-style cast."  Therefore, would it be okay to
> > patch postgres_ext.h as follows:
> >
> >
> > *** src/include/postgres_ext.h    2003-02-22 16:24:28.000000000 +0100
> > --- ../postgres_ext.h    2003-03-06 21:44:11.000000000 +0100
> > ***************
> > *** 28,34 ****
> > --- 28,38 ----
> >    */
> >   typedef unsigned int Oid;
> >
> > + #ifdef __cplusplus
> > + #define InvalidOid        (Oid(0))
> > + #else
> >   #define InvalidOid        ((Oid) 0)
> > + #endif
> >
> >   #define OID_MAX  UINT_MAX
> >   /* you will need to include <limits.h> to use the above #define */
> >
> >
> > Jeroen
> >

--
Nigel J. Andrews



pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: pg_get_triggerdef #2
Next
From: Bruce Momjian
Date:
Subject: Re: minor SELECT doc patch