--- C:/Users/Daniel/AppData/Local/Temp/real_utils.hpp-revBASE.svn000.tmp.hpp Di Aug 6 15:36:38 2013 +++ G:/temp/repository/boost/boost/spirit/home/karma/numeric/detail/real_utils.hpp So Mai 4 14:40:27 2014 @@ -105,7 +105,13 @@ namespace boost { namespace spirit { namespace kar if (exp != -dim) ++exp; dim = -exp; - n *= spirit::traits::pow10(exp); + // detect and handle denormalized numbers to prevent overflow in pow10 + if (exp > std::numeric_limits::max_exponent10) + { + n *= spirit::traits::pow10(std::numeric_limits::max_exponent10); + n *= spirit::traits::pow10(exp - std::numeric_limits::max_exponent10); + } else + n *= spirit::traits::pow10(exp); } }