This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Report bugs for variations in error handling in math functions?
- From: Michael Kerrisk <mtk dot manpages at googlemail dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>
- Cc: Michael Kerrisk <mtk dot manpages at googlemail dot com>, libc-alpha at sourceware dot org, Andreas Jaeger <aj at novell dot com>, Andries Brouwer <Andries dot Brouwer at cwi dot nl>,linux-man at vger dot kernel dot org
- Date: Thu, 31 Jul 2008 16:02:50 +0200
- Subject: Re: Report bugs for variations in error handling in math functions?
- References: <cfd18e0f0807250314h5c063754gd672c04b2eeef2f6@mail.gmail.com> <Pine.LNX.4.64.0807251535040.7701@digraph.polyomino.org.uk>
I think the correct approach is to consider it a bug if functions do not
set errno, or do not raise exceptions - that is, all of (b), (c) and (d)
are bugs. This would allow math_errhandling to be
MATH_ERRNO|MATH_ERREXCEPT unless translation units are compiled with
options preventing this, and make the error handling options available
consistent across the math.h functions supported by glibc. To conform
with C99, at least one approach (errno or exceptions) must be consistently
supported across all the functions, in any case.
I've reported bugs for all of the non-conformances I found.
Cheers,
Michael
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6759
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6776
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6777
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6778
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6779
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6780
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6781
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6782
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6783
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6783
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6783
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6785
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6786
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6787
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6788
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6792
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6793
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6794
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6795
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6796
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6797
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6798
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6799
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6801
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6801
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6803
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6804
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6805
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6806
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6807
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6808
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6809
http://sources.redhat.com/bugzilla/show_bug.cgi?id=6810