Raymond Lu 93e661f16b [svn-r11395] Purpose: Bug fix
Description: Quincey added the condition branch (else if (*((ST*)S) != (ST)((DT)(*((ST*)S)))))
in the definition of the macro H5T_CONV_Fx_CORE.  It handles a special situation
when the source is "float" and assigned the value of "INT_MAX".  Compilers do roundup
making this value "INT_MAX+1".  This branch is to check that situation and return
exception for some compilers, mainly GCC.

The branch if (*((ST*)S) > (DT)(D_MAX) || (S_PREC < D_PREC && *((ST*)S) ==
(DT)(D_MAX))) is for some compilers like Sun, HP, IBM, and SGI where under
the same situation the "int" doesn't overflow.

A test was added to dt_arith.c to check 2 conversions, from float to int where the
float is INT_MAX, and from double to signed char where the double is SCHAR_MAX.


Platforms tested: h5committest and fuss.
2005-09-12 14:39:16 -05:00
..
2005-01-19 15:15:26 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-25 12:16:02 -05:00
2002-11-20 08:27:30 -05:00
2005-09-01 17:46:16 -05:00
2005-09-12 14:39:16 -05:00
2005-08-13 15:53:35 -05:00
2005-09-03 12:11:00 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2002-04-11 17:53:26 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-09-07 16:19:06 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-27 08:34:28 -05:00
2005-08-30 18:42:39 -05:00
2005-08-31 15:03:52 -05:00
2005-08-27 08:34:28 -05:00
2005-08-27 08:34:28 -05:00
2004-07-01 12:38:04 -05:00
2005-08-13 15:53:35 -05:00
2005-09-12 01:02:55 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2004-12-29 09:26:20 -05:00
2005-08-13 15:53:35 -05:00
2000-11-09 16:47:59 -05:00
2005-08-27 08:34:28 -05:00
2003-01-21 15:20:13 -05:00
2005-08-13 15:53:35 -05:00
2004-03-10 16:45:30 -05:00
2004-03-10 16:45:30 -05:00
2005-01-08 10:26:31 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-07-21 09:48:26 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2000-10-20 15:57:56 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2004-11-30 15:53:53 -05:00
2005-08-13 15:53:35 -05:00
2005-09-12 09:29:54 -05:00
2003-01-09 12:20:03 -05:00
2003-06-13 15:30:43 -05:00
2005-08-20 11:32:55 -05:00
2005-08-20 13:09:28 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-09-07 16:44:16 -05:00
2005-09-07 16:44:16 -05:00
2005-09-07 16:44:16 -05:00
2005-08-20 10:45:13 -05:00
2005-08-13 15:53:35 -05:00
2004-01-06 12:53:13 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-13 15:53:35 -05:00
2005-08-27 08:34:28 -05:00
2005-08-13 15:53:35 -05:00