public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error
@ 2008-07-31 10:26 mtk dot manpages at gmail dot com
  2008-07-31 10:34 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error mtk dot manpages at gmail dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:26 UTC (permalink / raw)
  To: glibc-bugs

On overflow and underflow, nextafter() and nexttoward() correctly raise an
exception.  But errno is not set for these cases.  errno should be set to ERANGE.


Background: 
On error, many glibc math functions both set errno and raise an exception
(fetestexcept(3)).  For example, the following  function all do this: acos(),
asin(), cosh(), sinh(), acosh(), asinh(), exp(), exp2(), ldexp(), log(),
log10(), log2().  However, there is much inconsistency.  Some functions raise an
exception, but don't set errno.  Some functions set errno for some errors, but
not others.  A few set errno, but don't raise an exception.  This series of bug
reports documents deviations from what I consider the ideal: all functions
should BOTH set errno AND raise an exception for all errors.

All of these reports relate to tests on glibc 2.8 (as provided by SUSE 11.0).

-- 
           Summary: nextafter() and nexttoward() doen't set errno on error
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: math
        AssignedTo: aj at suse dot de
        ReportedBy: mtk dot manpages at gmail dot com
                CC: glibc-bugs at sources dot redhat dot com


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error
  2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
@ 2008-07-31 10:34 ` mtk dot manpages at gmail dot com
  2008-07-31 10:36 ` mtk dot manpages at gmail dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:34 UTC (permalink / raw)
  To: glibc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|nextafter() and nexttoward()|nextafter() and nexttoward()
                   |doen't set errno on error   |doen't set errno on overflow
                   |                            |error


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error
  2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
  2008-07-31 10:34 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error mtk dot manpages at gmail dot com
@ 2008-07-31 10:36 ` mtk dot manpages at gmail dot com
  2008-07-31 10:38 ` mtk dot manpages at gmail dot com
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:36 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From mtk dot manpages at gmail dot com  2008-07-31 10:34 -------
Created an attachment (id=2863)
 --> (http://sourceware.org/bugzilla/attachment.cgi?id=2863&action=view)
test program


-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow/underflow errors
  2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
                   ` (2 preceding siblings ...)
  2008-07-31 10:38 ` mtk dot manpages at gmail dot com
@ 2008-07-31 10:38 ` mtk dot manpages at gmail dot com
  2008-07-31 10:43 ` mtk dot manpages at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:38 UTC (permalink / raw)
  To: glibc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|nextafter() and nexttoward()|nextafter() and nexttoward()
                   |doen't set errno on overflow|doen't set errno on
                   |error                       |overflow/underflow errors


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error
  2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
  2008-07-31 10:34 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error mtk dot manpages at gmail dot com
  2008-07-31 10:36 ` mtk dot manpages at gmail dot com
@ 2008-07-31 10:38 ` mtk dot manpages at gmail dot com
  2008-07-31 10:38 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow/underflow errors mtk dot manpages at gmail dot com
  2008-07-31 10:43 ` mtk dot manpages at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:38 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From mtk dot manpages at gmail dot com  2008-07-31 10:36 -------
Created an attachment (id=2864)
 --> (http://sourceware.org/bugzilla/attachment.cgi?id=2864&action=view)
test program


-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow/underflow errors
  2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
                   ` (3 preceding siblings ...)
  2008-07-31 10:38 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow/underflow errors mtk dot manpages at gmail dot com
@ 2008-07-31 10:43 ` mtk dot manpages at gmail dot com
  4 siblings, 0 replies; 6+ messages in thread
From: mtk dot manpages at gmail dot com @ 2008-07-31 10:43 UTC (permalink / raw)
  To: glibc-bugs


------- Additional Comments From mtk dot manpages at gmail dot com  2008-07-31 10:42 -------
Sample runs demonstrating the problem:

$ /tmp/mt_nextafter dbl_max inf
errno == 0
fetestexcept() says:  FE_OVERFLOW FE_INEXACT
nextafter(1.79769313486231571e+308,inf)=inf
0 FE_OVERFLOW +inf

$ /tmp/mt_nextafter dbl_min 0
errno == 0
fetestexcept() says:  FE_UNDERFLOW FE_INEXACT
nextafter(2.22507385850720138e-308,0.00000000000000000e+00)=2.22507385850720089e-308
0 FE_UNDERFLOW subnormal

$ /tmp/mt_nexttoward dbl_max inf
errno == 0
fetestexcept() says:  FE_OVERFLOW FE_INEXACT
nexttoward(1.79769313486231571e+308,inf)=inf
0 FE_OVERFLOW +inf

$ /tmp/mt_nexttoward  dbl_min 0
errno == 0
fetestexcept() says:  FE_UNDERFLOW FE_INEXACT
nexttoward(2.22507385850720138e-308,0.000000000000000000000000000000000000e+00)=2.22507385850720089e-308
0 FE_UNDERFLOW subnormal


-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=6799

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-07-31 10:43 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-07-31 10:26 [Bug math/6799] New: nextafter() and nexttoward() doen't set errno on error mtk dot manpages at gmail dot com
2008-07-31 10:34 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow error mtk dot manpages at gmail dot com
2008-07-31 10:36 ` mtk dot manpages at gmail dot com
2008-07-31 10:38 ` mtk dot manpages at gmail dot com
2008-07-31 10:38 ` [Bug math/6799] nextafter() and nexttoward() doen't set errno on overflow/underflow errors mtk dot manpages at gmail dot com
2008-07-31 10:43 ` mtk dot manpages at gmail dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).