diff options
author | Dana Robinson <43805+derobins@users.noreply.github.com> | 2023-06-12 21:12:57 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-12 21:12:57 (GMT) |
commit | 1e1dac1dac58fa18f6b7788346d1ba7d3315b0f9 (patch) | |
tree | bcf0ae160f0990da3c5f6984c495ec0657d05de6 /src/H5Tpkg.h | |
parent | d1d6a2187d2388e4b1c1a0f05f1f6773401f1187 (diff) | |
download | hdf5-1e1dac1dac58fa18f6b7788346d1ba7d3315b0f9.zip hdf5-1e1dac1dac58fa18f6b7788346d1ba7d3315b0f9.tar.gz hdf5-1e1dac1dac58fa18f6b7788346d1ba7d3315b0f9.tar.bz2 |
Remove long double conversion work-arounds (#3097)
Several options and public symbols that were provided to paper
over non-standard long double conversions between signed/unsigned
long and long long values were removed from the Autotools and
CMake. These were added twenty years ago, when C99 and 64-bit
platforms were less common and are no longer needed.
Autotools:
--enable-dconv-accuracy
CMake:
HDF5_WANT_DATA_ACCURACY
H5pubconf.h symbols:
H5_WANT_DATA_ACCURACY
H5_LDOUBLE_TO_LONG_SPECIAL
H5_LONG_TO_LDOUBLE_SPECIAL
H5_LDOUBLE_TO_LLONG_ACCURATE
H5_LLONG_TO_LDOUBLE_CORRECT
H5_DISABLE_SOME_LDOUBLE_CONV
Diffstat (limited to 'src/H5Tpkg.h')
-rw-r--r-- | src/H5Tpkg.h | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/H5Tpkg.h b/src/H5Tpkg.h index 504f756..ae71c7d 100644 --- a/src/H5Tpkg.h +++ b/src/H5Tpkg.h @@ -112,37 +112,6 @@ /* (_not_ setting H5T_VISIT_SIMPLE and setting either H5T_VISIT_COMPLEX_FIRST or H5T_VISIT_COMPLEX_LAST will * mean visiting all nodes _except_ "simple" "leafs" in the "tree" */ -/* Define an internal macro for converting long long to long double. Mac OS 10.4 gives some - * incorrect conversions. */ -#if (H5_WANT_DATA_ACCURACY && defined(H5_LLONG_TO_LDOUBLE_CORRECT)) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_LLONG_LDOUBLE 1 -#endif - -/* Define an internal macro for converting unsigned long long to long double. SGI compilers give - * some incorrect conversion. 64-bit Solaris does different rounding. Windows Visual Studio 6 does - * not support unsigned long long. For FreeBSD(sleipnir), the last 2 bytes of mantissa are lost when - * compiler tries to do the conversion. For Cygwin, compiler doesn't do rounding correctly. - * Mac OS 10.4 gives some incorrect result. */ -#if (H5_WANT_DATA_ACCURACY && defined(H5_LLONG_TO_LDOUBLE_CORRECT)) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_ULLONG_LDOUBLE 1 -#endif - -/* Define an internal macro for converting long double to long long. SGI compilers give some incorrect - * conversions. Mac OS 10.4 gives incorrect conversions. HP-UX 11.00 compiler generates floating exception. - * The hard conversion on Windows .NET 2003 has a bug and gives wrong exception value. */ -#if (H5_WANT_DATA_ACCURACY && defined(H5_LDOUBLE_TO_LLONG_ACCURATE)) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_LDOUBLE_LLONG 1 -#endif - -/* Define an internal macro for converting long double to unsigned long long. SGI compilers give some - * incorrect conversions. Mac OS 10.4 gives incorrect conversions. HP-UX 11.00 compiler generates - * floating exception. */ -#if (H5_WANT_DATA_ACCURACY && defined(H5_LDOUBLE_TO_LLONG_ACCURATE)) || (!H5_WANT_DATA_ACCURACY) -#define H5T_CONV_INTERNAL_LDOUBLE_ULLONG 1 -#else -#define H5T_CONV_INTERNAL_LDOUBLE_ULLONG 0 -#endif - /* Statistics about a conversion function */ struct H5T_stats_t { unsigned ncalls; /*num calls to conversion function */ |