Magnus Hagander <magnus@hagander.net> writes:
> The ecpg patch at
> http://git.postgresql.org/gitweb?p=postgresql.git;a=commit;h=2f567552
> causes a compile warning on win64 (andi think win32, but I didn't
> recheck that). Specifically, line 140 of typename.c has:
> return (-type);
> Where type is of type Oid, which is unsigned.
I think that the compiler has caught an actual mistake here.
It looks to me like the patch is attempting to use a 'negative'
Oid to signal a problem, and that simply is going to break as soon
as the Oid counter runs past 2G. Perhaps InvalidOid is the thing
to use here? I did not look at the call sites though.
regards, tom lane