Re: ECPG patch causes warning

Поиск
Список
Период
Сортировка
От Boszormenyi Zoltan
Тема Re: ECPG patch causes warning
Дата
Msg-id 4B4A01DD.2020309@cybertec.at
обсуждение исходный текст
Ответ на Re: ECPG patch causes warning  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: ECPG patch causes warning  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Tom Lane írta:
> 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.
>   

Yes, it's a mistake, but not an actual bug.
The intent was to be able to catch unhandled
cases in the application, just as in ecpg_dynamic_type().
The fix for sqlda_dynamic_type() is to use the same cast:
   return -(int) type;

Should I send a patch for this?

> 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
>
>   


-- 
Bible has answers for everything. Proof:
"But let your communication be, Yea, yea; Nay, nay: for whatsoever is more
than these cometh of evil." (Matthew 5:37) - basics of digital technology.
"May your kingdom come" - superficial description of plate tectonics

----------------------------------
Zoltán Böszörményi
Cybertec Schönig & Schönig GmbH
http://www.postgresql.at/



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: ECPG patch causes warning
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Streaming replication status