From tlumley at u.washington.edu  Wed Jan  5 23:12:30 2005
From: tlumley at u.washington.edu (Thomas Lumley)
Date: Wed Jan  5 23:12:40 2005
Subject: [Rd] Standalone Mathlib, C++ and ISNAN()
In-Reply-To: <DB4A6959-5F60-11D9-97FA-000393D3D676@unsw.edu.au>
References: <77B2A8C4-5ED8-11D9-97FA-000393D3D676@unsw.edu.au>
	<Pine.A41.4.61b.0501050759060.100170@homer05.u.washington.edu>
	<C2214FA4-5F4F-11D9-97FA-000393D3D676@unsw.edu.au>
	<Pine.A41.4.61b.0501051149490.59084@homer03.u.washington.edu>
	<DB4A6959-5F60-11D9-97FA-000393D3D676@unsw.edu.au>
Message-ID: <Pine.A41.4.61b.0501051405010.59084@homer03.u.washington.edu>

On Thu, 6 Jan 2005, Bill Northcott wrote:

> On 06/01/2005, at 6:53 AM, Thomas Lumley wrote:
>> 
>> I believe (with a little Googling) the suggested C++ approach is to use 
>> std::isnan if <cmath> is included.
>> 
> I tried that too, but without any success.  I even tried __gnu_cxx::isnan.
>
> It was suggested by one of the gcc people, but I could find no documentation 
> about it.  The ISO C++ docs do not include isnan as a symbol provided by 
> cmath within the std namespace.  I looked at the gcc source code and could 
> see no reason why it should work.

Hmm.  What *are* C++ programmers supposed to use to test for NaN, then? 
It might well not be anything in the ISO standard, just as it isn't in 
C89, but surely there is some prescribed way to do it.

We don't want ISNAN to be a function unnecessarily in C, since it is used a 
lot and there is reportedly quite a bit of overhead to very simple 
functions on some processors.

 	-thomas


[Rd] Standalone Mathlib, C++ and ISNAN()
Thomas Lumley