@@ -603,12 +603,20 @@ void test_fpclassify()
603
603
static_assert ((std::is_same<decltype (std::fpclassify (0 )), int >::value), " " );
604
604
static_assert ((std::is_same<decltype (std::fpclassify ((long double )0 )), int >::value), " " );
605
605
static_assert ((std::is_same<decltype (fpclassify (Ambiguous ())), Ambiguous>::value), " " );
606
+ static_assert ((std::is_same<decltype (fpclassify (Value<float >())), int >::value), " " );
607
+ static_assert ((std::is_same<decltype (fpclassify (Value<double >())), int >::value), " " );
608
+ static_assert ((std::is_same<decltype (fpclassify (Value<long double >())), int >::value), " " );
609
+ static_assert (noexcept (std::fpclassify ((float )0 )), " " );
610
+ static_assert (noexcept (std::fpclassify ((double )0 )), " " );
611
+ static_assert (noexcept (std::fpclassify ((long double )0 )), " " );
612
+ static_assert (noexcept (std::fpclassify (0 )), " " );
606
613
assert (std::fpclassify (-1.0 ) == FP_NORMAL);
607
614
assert (std::fpclassify (0 ) == FP_ZERO);
608
615
assert (std::fpclassify (1 ) == FP_NORMAL);
609
616
assert (std::fpclassify (-1 ) == FP_NORMAL);
610
617
assert (std::fpclassify (std::numeric_limits<int >::max ()) == FP_NORMAL);
611
618
assert (std::fpclassify (std::numeric_limits<int >::min ()) == FP_NORMAL);
619
+ assert (std::fpclassify (Value<double , 1 >()) == FP_NORMAL);
612
620
}
613
621
614
622
void test_isfinite ()
0 commit comments