@@ -363,7 +363,7 @@ namespace Concurrency { namespace streams
363363 // / Get the underlying stream buffer.
364364 // / </summary>
365365 // / <returns>The underlying stream buffer.</returns>
366- streambuf<CharType> streambuf () const
366+ Concurrency::streams:: streambuf<CharType> streambuf () const
367367 {
368368 return helper ()->m_buffer ;
369369 }
@@ -1430,10 +1430,10 @@ template <typename FloatingPoint>
14301430static pplx::task<FloatingPoint> _extract_result (std::shared_ptr<_double_state<FloatingPoint>> state)
14311431{
14321432 if (state->p_exception_string .length () > 0 )
1433- throw std::exception (state->p_exception_string .c_str ());
1433+ throw std::runtime_error (state->p_exception_string .c_str ());
14341434
14351435 if (!state->complete && state->exponent )
1436- throw std::exception (" Incomplete exponent" );
1436+ throw std::logic_error (" Incomplete exponent" );
14371437
14381438 FloatingPoint result = static_cast <FloatingPoint>((state->minus == 2 ) ? -state->result : state->result );
14391439 if (state->exponent_minus == 2 )
@@ -1450,7 +1450,7 @@ static pplx::task<FloatingPoint> _extract_result(std::shared_ptr<_double_state<F
14501450 #undef max
14511451
14521452 if (result > std::numeric_limits<FloatingPoint>::max () || result < -std::numeric_limits<FloatingPoint>::max ())
1453- throw std::exception (" The value is too big" );
1453+ throw std::overflow_error (" The value is too big" );
14541454 #pragma pop_macro ("max")
14551455 }
14561456 else
@@ -1462,7 +1462,7 @@ static pplx::task<FloatingPoint> _extract_result(std::shared_ptr<_double_state<F
14621462 if (!is_zero &&
14631463 result > -std::numeric_limits<FloatingPoint>::denorm_min () &&
14641464 result < std::numeric_limits<FloatingPoint>::denorm_min ())
1465- throw std::exception (" The value is too small" );
1465+ throw std::underflow_error (" The value is too small" );
14661466 }
14671467
14681468 return pplx::task_from_result<FloatingPoint>(result);
0 commit comments