Re: Minor bug in src/port/rint.c

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Minor bug in src/port/rint.c
Дата
Msg-id 200803250224.m2P2O4x21153@momjian.us
обсуждение исходный текст
Ответ на Minor bug in src/port/rint.c  (Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>)
Ответы Re: Minor bug in src/port/rint.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Added to TODO:
       o Fix port/rint.c to be spec-compliant
  http://archives.postgresql.org/pgsql-hackers/2008-01/msg00808.php


---------------------------------------------------------------------------

Mark Cave-Ayland wrote:
> Hi everyone,
> 
> I believe that there is a small bug in src/port/rint.c when the input
> parameter has a fractional part of 0.5 which is demonstrated by the
> attached program. It appears that the PG version of rint() rounds in the
> wrong direction with respect to glibc.
> 
> mca@mca-desktop:~$ ./test
> rint(-1.5): -2.000000
> pg_rint(-1.5): -1.000000
> rint(1.5): 2.000000
> pg_rint(1.5): 1.000000
> 
> The fix is, of course, to add an equals into the if() comparisons on
> lines 21 and 26, so that when the fractional part is 0.5, it rounds in
> the opposite direction instead.
> 
> I'm sure that this will have practically zero effect on the code,
> however it may be worth applying for correctness and consistency with
> other platform implementations.
> 
> 
> ATB,
> 
> Mark.
> 
> -- 
> ILande - Open Source Consultancy
> http://www.ilande.co.uk
> 

[ Attachment, skipping... ]

> 
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://postgres.enterprisedb.com
 + If your life is a hard drive, Christ can be your backup. +


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

Предыдущее
От: mx
Дата:
Сообщение: Re: [GSoC] (Is it OK to choose items without % mark in theToDoList) && (is it an acceptable idea to build index on Flash Disk)
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: Bug in psql/enum