@@ -363,7 +363,7 @@ namespace Concurrency { namespace streams
363
363
// / Get the underlying stream buffer.
364
364
// / </summary>
365
365
// / <returns>The underlying stream buffer.</returns>
366
- streambuf<CharType> streambuf () const
366
+ Concurrency::streams:: streambuf<CharType> streambuf () const
367
367
{
368
368
return helper ()->m_buffer ;
369
369
}
@@ -1430,10 +1430,10 @@ template <typename FloatingPoint>
1430
1430
static pplx::task<FloatingPoint> _extract_result (std::shared_ptr<_double_state<FloatingPoint>> state)
1431
1431
{
1432
1432
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 ());
1434
1434
1435
1435
if (!state->complete && state->exponent )
1436
- throw std::exception (" Incomplete exponent" );
1436
+ throw std::logic_error (" Incomplete exponent" );
1437
1437
1438
1438
FloatingPoint result = static_cast <FloatingPoint>((state->minus == 2 ) ? -state->result : state->result );
1439
1439
if (state->exponent_minus == 2 )
@@ -1450,7 +1450,7 @@ static pplx::task<FloatingPoint> _extract_result(std::shared_ptr<_double_state<F
1450
1450
#undef max
1451
1451
1452
1452
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" );
1454
1454
#pragma pop_macro ("max")
1455
1455
}
1456
1456
else
@@ -1462,7 +1462,7 @@ static pplx::task<FloatingPoint> _extract_result(std::shared_ptr<_double_state<F
1462
1462
if (!is_zero &&
1463
1463
result > -std::numeric_limits<FloatingPoint>::denorm_min () &&
1464
1464
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" );
1466
1466
}
1467
1467
1468
1468
return pplx::task_from_result<FloatingPoint>(result);
0 commit comments