forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit6bdf130
committed
Avoid wrong results for power() with NaN input on more platforms.
Buildfarm results show that the modern POSIX rule that 1 ^ NaN = 1 is nothonored on *BSD until relatively recently, and really old platforms don'tbelieve that NaN ^ 0 = 1 either. (This is unsurprising, perhaps, sinceSUSv2 doesn't require either behavior.) In hopes of getting to platformindependent behavior, let's deal with all the NaN-input cases explicitlyin dpow().Note that numeric_power() doesn't know either of these special cases.But since that behavior is platform-independent, I think it should beaddressed separately, and probably not back-patched.Discussion:https://postgr.es/m/75DB81BEEA95B445AE6D576A0A5C9E936A73E741@BPXM05GP.gisp.nec.co.jp1 parent68e7e97 commit6bdf130
File tree
6 files changed
+46
-3
lines changed- src
- backend/utils/adt
- test/regress
- expected
- sql
6 files changed
+46
-3
lines changedLines changed: 21 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1548 | 1548 |
| |
1549 | 1549 |
| |
1550 | 1550 |
| |
| 1551 | + | |
| 1552 | + | |
| 1553 | + | |
| 1554 | + | |
| 1555 | + | |
| 1556 | + | |
| 1557 | + | |
| 1558 | + | |
| 1559 | + | |
| 1560 | + | |
| 1561 | + | |
| 1562 | + | |
| 1563 | + | |
| 1564 | + | |
| 1565 | + | |
| 1566 | + | |
| 1567 | + | |
| 1568 | + | |
| 1569 | + | |
1551 | 1570 |
| |
1552 | 1571 |
| |
1553 | 1572 |
| |
| |||
1569 | 1588 |
| |
1570 | 1589 |
| |
1571 | 1590 |
| |
1572 |
| - | |
1573 |
| - | |
| 1591 | + | |
1574 | 1592 |
| |
1575 | 1593 |
| |
1576 | 1594 |
| |
1577 |
| - | |
| 1595 | + | |
1578 | 1596 |
| |
1579 | 1597 |
| |
1580 | 1598 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
358 | 358 |
| |
359 | 359 |
| |
360 | 360 |
| |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
361 | 367 |
| |
362 | 368 |
| |
363 | 369 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
362 | 362 |
| |
363 | 363 |
| |
364 | 364 |
| |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
365 | 371 |
| |
366 | 372 |
| |
367 | 373 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
362 | 362 |
| |
363 | 363 |
| |
364 | 364 |
| |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
365 | 371 |
| |
366 | 372 |
| |
367 | 373 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
358 | 358 |
| |
359 | 359 |
| |
360 | 360 |
| |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
361 | 367 |
| |
362 | 368 |
| |
363 | 369 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
111 | 111 |
| |
112 | 112 |
| |
113 | 113 |
| |
| 114 | + | |
114 | 115 |
| |
115 | 116 |
| |
116 | 117 |
| |
|
0 commit comments
Comments
(0)