gcc/libstdc++-v3/include/std
Richard Henderson 1472e41cb3 builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
gcc/
        * builtin-types.def (BT_FN_FLOAT_CONST_STRING): New.
        (BT_FN_DOUBLE_CONST_STRING, BT_FN_LONG_DOUBLE_CONST_STRING): New.
        * builtins.def (__builtin_nan, __builtin_nanf, __builtin_nanl): New.
        (__builtin_nans, __builtin_nansf, __builtin_nansl): New.
        * builtins.c (fold_builtin_nan): New.
        (fold_builtin): Call it.
        * real.c (real_nan): Parse a non-empty string.
        (round_for_format): Fix NaN significand truncation.
        * real.h (real_nan): Return bool.
        * doc/extend.texi: Document new builtins.

libstdc++/
        * include/std/std_limits.h (__glibcpp_f32_QNaN_bytes,
        __glibcpp_f32_has_QNaN, __glibcpp_f32_SNaN_bytes,
        __glibcpp_f32_has_SNaN, __glibcpp_f64_QNaN_bytes,
        __glibcpp_f64_has_QNaN, __glibcpp_f64_SNaN_bytes,
        __glibcpp_f64_has_SNaN, __glibcpp_f80_QNaN_bytes,
        __glibcpp_f80_has_QNaN, __glibcpp_f80_SNaN_bytes,
        __glibcpp_f80_has_SNaN, __glibcpp_f96_QNaN_bytes,
        __glibcpp_f96_has_QNaN, __glibcpp_f96_SNaN_bytes,
        __glibcpp_f96_has_SNaN, __glibcpp_f128_QNaN_bytes,
        __glibcpp_f128_has_QNaN, __glibcpp_f128_SNaN_bytes,
        __glibcpp_f128_has_SNaN, __glibcpp_float_QNaN_bytes,
        __glibcpp_float_has_QNaN, __glibcpp_float_SNaN_bytes,
        __glibcpp_float_has_SNaN, __glibcpp_double_QNaN_bytes,
        __glibcpp_double_has_QNaN, __glibcpp_double_SNaN_bytes,
        __glibcpp_double_has_SNaN, __glibcpp_long_double_QNaN_bytes,
        __glibcpp_long_double_has_QNaN, __glibcpp_long_double_SNaN_bytes,
        __glibcpp_long_double_has_SNaN): Remove.
        (__glibcpp_f128_is_iec559): True if IEEE.
        (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
        (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
        (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.
        (std::numeric_limits<float>::has_quiet_NaN): Use __builtin_nanf.
        (std::numeric_limits<float>::has_signaling_NaN): Mirror has_quiet_NaN.
        (std::numeric_limits<float>::quiet_NaN): Use __builtin_nanf.
        (std::numeric_limits<float>::signaling_NaN): Use __builtin_nansf.
        (std::numeric_limits<double>): Similarly.
        (std::numeric_limits<long double>): Similarly.
        * src/limits.cc (__glibcpp_float_QNaN, __glibcpp_float_SNaN): Remove.
        (__glibcpp_double_QNaN, __glibcpp_double_SNaN): Remove.
        (__glibcpp_long_double_QNaN, __glibcpp_long_double_SNaN): Remove.

        * testsuite/18_support/numeric_limits.cc (test_infinity): New.
        (test_denorm_min, test_qnan, test_is_iec559): New.

From-SVN: r57221
2002-09-16 18:28:50 -07:00
..
std_algorithm.h
std_bitset.h TODO: Update. 2002-06-03 04:45:03 +00:00
std_complex.h
std_deque.h Makefile.am: Add new files. 2002-06-12 22:07:53 +00:00
std_fstream.h char_traits.h: Remove generic definitions. 2002-07-31 02:47:36 +00:00
std_functional.h
std_iomanip.h
std_ios.h
std_iosfwd.h
std_iostream.h
std_istream.h re PR libstdc++/7216 (basic_iostream::traits_type is ambiguous issue) 2002-07-26 01:49:36 +00:00
std_iterator.h
std_limits.h builtin-types.def (BT_FN_FLOAT_CONST_STRING): New. 2002-09-16 18:28:50 -07:00
std_list.h Makefile.am: Add new files. 2002-06-12 22:07:53 +00:00
std_locale.h
std_map.h
std_memory.h std_memory.h: Fix formatting. 2002-07-04 07:25:19 +00:00
std_numeric.h
std_ostream.h
std_queue.h PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161 2002-06-29 01:10:51 +00:00
std_set.h
std_sstream.h
std_stack.h PR libstdc++/7157, PR libstdc++/7158, PR libstdc++/7161 2002-06-29 01:10:51 +00:00
std_stdexcept.h
std_streambuf.h char_traits.h: Remove generic definitions. 2002-07-31 02:47:36 +00:00
std_string.h
std_utility.h
std_valarray.h valarray_array.h (_DEFINE_ARRAY_FUNCTION): Use our object function surrogates. 2002-08-02 23:08:40 +00:00
std_vector.h Makefile.am: Add new files. 2002-06-12 22:07:53 +00:00