stdcxx-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From se...@apache.org
Subject svn commit: r651034 - /stdcxx/branches/4.2.x/src/num_put.cpp
Date Wed, 23 Apr 2008 20:04:16 GMT
Author: sebor
Date: Wed Apr 23 13:04:15 2008
New Revision: 651034

URL: http://svn.apache.org/viewvc?rev=651034&view=rev
Log:
2008-04-23  Martin Sebor  <sebor@roguewave.com>

	Merged revs 650902 and 650933 from trunk.

	* src/num_put.cpp (__rw_isqnan, __rw_issnan, __rw_fmat_infinite):
	Silence HP aCC remark #2826-D: parameter was never referenced.

	2008-04-23 Farid Zaripov <farid_zaripov@epam.com>

	STDCXX-880	
	* src/num_put.cpp: Added simple overloads of the __rw_isfinite(),
	__rw_signbit(), __rw_isinf(), __rw_isnan(), __rw_isqnan(), __rw_issnan()
	for float and long double types.

	2008-04-23 Farid Zaripov <farid_zaripov@epam.com>

	STDCXX-880
	* src/num_put.cpp [_RWSTD_DBL_SIZE == _RWSTD_LDBL_SIZE]: Call double
	type overload from long double type overload when sizeof (double) ==
	sizeof (long double).

Modified:
    stdcxx/branches/4.2.x/src/num_put.cpp

Modified: stdcxx/branches/4.2.x/src/num_put.cpp
URL: http://svn.apache.org/viewvc/stdcxx/branches/4.2.x/src/num_put.cpp?rev=651034&r1=651033&r2=651034&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/src/num_put.cpp (original)
+++ stdcxx/branches/4.2.x/src/num_put.cpp Wed Apr 23 13:04:15 2008
@@ -160,9 +160,9 @@
 
 inline bool __rw_isnan (double val) { return !!isnan (val); }
 
-inline bool __rw_isqnan (double val) { return false; }
+inline bool __rw_isqnan (double) { return false; }
 
-inline bool __rw_issnan (double val) { return false; }
+inline bool __rw_issnan (double) { return false; }
 
 #else
 
@@ -181,11 +181,61 @@
 #endif
 
 
+inline bool __rw_isfinite (float) { return true; }
+
+inline bool __rw_signbit (float) { return false; }
+
+inline bool __rw_isinf (float) { return false; }
+
+inline bool __rw_isnan (float) { return false; }
+
+inline bool __rw_isqnan (float) { return false; }
+
+inline bool __rw_issnan (float) { return false; }
+
+
+#ifndef _RWSTD_NO_LONG_DOUBLE
+
+#  if _RWSTD_DBL_SIZE == _RWSTD_LDBL_SIZE
+
+inline bool __rw_isfinite (long double x) { return __rw_isfinite (double (x)); }
+
+inline bool __rw_signbit (long double x) { return __rw_signbit (double (x)); }
+
+inline bool __rw_isinf (long double x) { return __rw_isinf (double (x)); }
+
+inline bool __rw_isnan (long double x) { return __rw_isnan (double (x)); }
+
+inline bool __rw_isqnan (long double x) { return __rw_isqnan (double (x)); }
+
+inline bool __rw_issnan (long double x) { return __rw_issnan (double (x)); }
+
+#  else   // _RWSTD_DBL_SIZE != _RWSTD_LDBL_SIZE
+
+inline bool __rw_isfinite (long double) { return true; }
+
+inline bool __rw_signbit (long double) { return false; }
+
+inline bool __rw_isinf (long double) { return false; }
+
+inline bool __rw_isnan (long double) { return false; }
+
+inline bool __rw_isqnan (long double) { return false; }
+
+inline bool __rw_issnan (long double) { return false; }
+
+#  endif   // _RWSTD_DBL_SIZE == _RWSTD_LDBL_SIZE
+
+#endif   // _RWSTD_NO_LONG_DOUBLE
+
+
 static int
 __rw_fmat_infinite (char *buf, size_t bufsize, double val, unsigned flags)
 {
     _RWSTD_ASSERT (!__rw_isfinite (val));
     _RWSTD_ASSERT (5 <= bufsize);
+
+    _RWSTD_UNUSED (bufsize); 
 
     char* end = buf;
     const bool cap = !!(flags & _RWSTD_IOS_UPPERCASE);



Mime
View raw message