public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug other/57675] Complex division of NaN by zero not handled correctly
[not found] <bug-57675-4@http.gcc.gnu.org/bugzilla/>
@ 2013-06-22 15:12 ` ian at airs dot com
2013-06-22 17:29 ` joseph at codesourcery dot com
2013-06-22 19:33 ` ian at airs dot com
2 siblings, 0 replies; 3+ messages in thread
From: ian at airs dot com @ 2013-06-22 15:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675
Ian Lance Taylor <ian at airs dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jsm28 at gcc dot gnu.org
--- Comment #1 from Ian Lance Taylor <ian at airs dot com> ---
Adding Joseph in case he has any comment on the standards-based argument.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug other/57675] Complex division of NaN by zero not handled correctly
[not found] <bug-57675-4@http.gcc.gnu.org/bugzilla/>
2013-06-22 15:12 ` [Bug other/57675] Complex division of NaN by zero not handled correctly ian at airs dot com
@ 2013-06-22 17:29 ` joseph at codesourcery dot com
2013-06-22 19:33 ` ian at airs dot com
2 siblings, 0 replies; 3+ messages in thread
From: joseph at codesourcery dot com @ 2013-06-22 17:29 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675
--- Comment #2 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
N1399 has a detailed analysis of issues with complex multiply and divide
in C99. There was no consensus to adopt requirements in that detail, but
N1496 was adopted with a more minimal fix for (1.0+1.0*I)/(0.0+NAN*I). It
appears that the GCC implementation does not suffer the particular issue
being addressed in N1496.
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1399.txt
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1496.htm
I believe the model in N1399 (and more generally for NaNs in C99/C11 and
the draft TS 18661 bindings to IEEE 754-2008; see e.g. how hypot(NaN, Inf)
works) is that NaN+1.0i is considered (for a quiet NaN) to be
<unspecified-real>+1.0i. Dividing by zero then gives an unspecified (or
not fully specified) infinity, so a result with one part infinity and one
part NaN seems appropriate.
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug other/57675] Complex division of NaN by zero not handled correctly
[not found] <bug-57675-4@http.gcc.gnu.org/bugzilla/>
2013-06-22 15:12 ` [Bug other/57675] Complex division of NaN by zero not handled correctly ian at airs dot com
2013-06-22 17:29 ` joseph at codesourcery dot com
@ 2013-06-22 19:33 ` ian at airs dot com
2 siblings, 0 replies; 3+ messages in thread
From: ian at airs dot com @ 2013-06-22 19:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57675
Ian Lance Taylor <ian at airs dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |INVALID
--- Comment #3 from Ian Lance Taylor <ian at airs dot com> ---
Closing as being C standard conformant.
Now I have to decide what to do with Go.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-06-22 19:33 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-57675-4@http.gcc.gnu.org/bugzilla/>
2013-06-22 15:12 ` [Bug other/57675] Complex division of NaN by zero not handled correctly ian at airs dot com
2013-06-22 17:29 ` joseph at codesourcery dot com
2013-06-22 19:33 ` ian at airs 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).