Re: power() function in Windows: "value out of range: underflow"

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: David Rowley <david.rowley@2ndquadrant.com>
Cc: Huong Dangminh <huo-dangminh@ys.jp.nec.com>, Euler Taveira <euler@timbira.com.br>, "pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>, Pg Hackers <pgsql-hackers@postgresql.org>, Akio Iwaasa <aki-iwaasa@vt.jp.nec.com>
Date: 2018-04-29T22:10:17Z
Lists: pgsql-bugs, pgsql-hackers
David Rowley <david.rowley@2ndquadrant.com> writes:
> I wonder if it's better just to hard code these two cases before even
> calling the pow() function.

Yeah, see my followup --- I also found out that SUSv2 (POSIX 1997)
doesn't require either of these special cases, which helps explain
why the inconsistency on older platforms.

Hacking on a patch now.

			regards, tom lane


Commits

  1. Revert back-branch changes in power()'s behavior for NaN inputs.

  2. Avoid wrong results for power() with NaN input on more platforms.

  3. Avoid wrong results for power() with NaN input on some platforms.