This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug math/6808] New: yn() does not set errno for overflow error.


For an overflow error, yn() correctly raise an exception, but does not set
errno.  errno should be set to ERANGE.

Note: I haven't raised this bug against y0)_ and y1(), since, as far as I can
tell, one can't get overflow errors for these functions (on x86-32 at least). 
For example, if the argument is DBL_MIN:
y0(2.22507385850720138e-308)=-4.51052971007128576e+02
y1(2.22507385850720138e-308)=-2.86111748575702833e+307

In passing, it is worth noting that yn() does correctly set errno and raise the
right exception at least one other error (domain error), and also sets errno
correctly for an underflow error.

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: yn() does not set errno for overflow 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=6808

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]