Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/math/special_functions/fpclassify.hpp @ 101:c530137014c0
Update Boost headers (1.58.0)
author | Chris Cannam |
---|---|
date | Mon, 07 Sep 2015 11:12:49 +0100 |
parents | 2665513ce2d3 |
children |
comparison
equal
deleted
inserted
replaced
100:793467b5e61c | 101:c530137014c0 |
---|---|
307 { | 307 { |
308 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS | 308 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS |
309 if(std::numeric_limits<T>::is_specialized) | 309 if(std::numeric_limits<T>::is_specialized) |
310 return isfinite_impl(x, generic_tag<true>()); | 310 return isfinite_impl(x, generic_tag<true>()); |
311 #endif | 311 #endif |
312 (void)x; // warning supression. | 312 (void)x; // warning suppression. |
313 return true; | 313 return true; |
314 } | 314 } |
315 | 315 |
316 template<class T> | 316 template<class T> |
317 inline bool isfinite_impl(T x, ieee_tag const&) | 317 inline bool isfinite_impl(T x, ieee_tag const&) |
346 template<> | 346 template<> |
347 inline bool (isfinite)(long double x) | 347 inline bool (isfinite)(long double x) |
348 { //!< \brief return true if floating-point type t is finite. | 348 { //!< \brief return true if floating-point type t is finite. |
349 typedef detail::fp_traits<long double>::type traits; | 349 typedef detail::fp_traits<long double>::type traits; |
350 typedef traits::method method; | 350 typedef traits::method method; |
351 typedef boost::is_floating_point<long double>::type fp_tag; | 351 //typedef boost::is_floating_point<long double>::type fp_tag; |
352 typedef long double value_type; | 352 typedef long double value_type; |
353 return detail::isfinite_impl(static_cast<value_type>(x), method()); | 353 return detail::isfinite_impl(static_cast<value_type>(x), method()); |
354 } | 354 } |
355 #endif | 355 #endif |
356 | 356 |
417 template<> | 417 template<> |
418 inline bool (isnormal)(long double x) | 418 inline bool (isnormal)(long double x) |
419 { | 419 { |
420 typedef detail::fp_traits<long double>::type traits; | 420 typedef detail::fp_traits<long double>::type traits; |
421 typedef traits::method method; | 421 typedef traits::method method; |
422 typedef boost::is_floating_point<long double>::type fp_tag; | 422 //typedef boost::is_floating_point<long double>::type fp_tag; |
423 typedef long double value_type; | 423 typedef long double value_type; |
424 return detail::isnormal_impl(static_cast<value_type>(x), method()); | 424 return detail::isnormal_impl(static_cast<value_type>(x), method()); |
425 } | 425 } |
426 #endif | 426 #endif |
427 | 427 |
451 { | 451 { |
452 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS | 452 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS |
453 if(std::numeric_limits<T>::is_specialized) | 453 if(std::numeric_limits<T>::is_specialized) |
454 return isinf_impl(x, generic_tag<true>()); | 454 return isinf_impl(x, generic_tag<true>()); |
455 #endif | 455 #endif |
456 (void)x; // warning supression. | 456 (void)x; // warning suppression. |
457 return false; | 457 return false; |
458 } | 458 } |
459 | 459 |
460 template<class T> | 460 template<class T> |
461 inline bool isinf_impl(T x, ieee_copy_all_bits_tag const&) | 461 inline bool isinf_impl(T x, ieee_copy_all_bits_tag const&) |
506 template<> | 506 template<> |
507 inline bool (isinf)(long double x) | 507 inline bool (isinf)(long double x) |
508 { | 508 { |
509 typedef detail::fp_traits<long double>::type traits; | 509 typedef detail::fp_traits<long double>::type traits; |
510 typedef traits::method method; | 510 typedef traits::method method; |
511 typedef boost::is_floating_point<long double>::type fp_tag; | 511 //typedef boost::is_floating_point<long double>::type fp_tag; |
512 typedef long double value_type; | 512 typedef long double value_type; |
513 return detail::isinf_impl(static_cast<value_type>(x), method()); | 513 return detail::isinf_impl(static_cast<value_type>(x), method()); |
514 } | 514 } |
515 #endif | 515 #endif |
516 | 516 |
539 { | 539 { |
540 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS | 540 #ifdef BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS |
541 if(std::numeric_limits<T>::is_specialized) | 541 if(std::numeric_limits<T>::is_specialized) |
542 return isnan_impl(x, generic_tag<true>()); | 542 return isnan_impl(x, generic_tag<true>()); |
543 #endif | 543 #endif |
544 (void)x; // warning supression | 544 (void)x; // warning suppression |
545 return false; | 545 return false; |
546 } | 546 } |
547 | 547 |
548 template<class T> | 548 template<class T> |
549 inline bool isnan_impl(T x, ieee_copy_all_bits_tag const&) | 549 inline bool isnan_impl(T x, ieee_copy_all_bits_tag const&) |
592 template<> | 592 template<> |
593 inline bool (isnan)(long double x) | 593 inline bool (isnan)(long double x) |
594 { //!< \brief return true if floating-point type t is NaN (Not A Number). | 594 { //!< \brief return true if floating-point type t is NaN (Not A Number). |
595 typedef detail::fp_traits<long double>::type traits; | 595 typedef detail::fp_traits<long double>::type traits; |
596 typedef traits::method method; | 596 typedef traits::method method; |
597 typedef boost::is_floating_point<long double>::type fp_tag; | 597 //typedef boost::is_floating_point<long double>::type fp_tag; |
598 return detail::isnan_impl(x, method()); | 598 return detail::isnan_impl(x, method()); |
599 } | 599 } |
600 #endif | 600 #endif |
601 | 601 |
602 } // namespace math | 602 } // namespace math |