diff -Naur a/boost/lexical_cast/detail/converter_lexical.hpp b/boost/lexical_cast/detail/converter_lexical.hpp --- a/boost/lexical_cast/detail/converter_lexical.hpp 2015-09-18 14:22:09.121271000 -0400 +++ b/boost/lexical_cast/detail/converter_lexical.hpp 2015-09-18 14:23:02.371625000 -0400 @@ -364,7 +364,6 @@ #endif }; -#ifndef BOOST_LCAST_NO_COMPILE_TIME_PRECISION // Helper for floating point types. // -1.23456789e-123456 // ^ sign @@ -380,6 +379,7 @@ Source, BOOST_DEDUCED_TYPENAME boost::enable_if >::type > { +#ifndef BOOST_LCAST_NO_COMPILE_TIME_PRECISION BOOST_STATIC_ASSERT( std::numeric_limits::max_exponent10 <= 999999L && std::numeric_limits::min_exponent10 >= -999999L @@ -388,8 +388,10 @@ BOOST_STATIC_CONSTANT(std::size_t, value = 5 + lcast_precision::value + 6 ); - }; +#else + BOOST_STATIC_CONSTANT(std::size_t, value = 156); #endif // #ifndef BOOST_LCAST_NO_COMPILE_TIME_PRECISION + }; } namespace detail // lexical_cast_stream_traits