From bf551ad8c9c1bbb1fd70c60a53de68f4683d8195 Mon Sep 17 00:00:00 2001 From: Antony Polukhin Date: Tue, 27 Aug 2013 07:51:27 +0000 Subject: [PATCH] Delay character trait extraction (refs #9046) [SVN r85483] --- include/boost/lexical_cast.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/boost/lexical_cast.hpp b/include/boost/lexical_cast.hpp index ccbe95f..0366e1c 100644 --- a/include/boost/lexical_cast.hpp +++ b/include/boost/lexical_cast.hpp @@ -584,9 +584,9 @@ namespace boost { typedef BOOST_DEDUCED_TYPENAME boost::mpl::if_c< boost::detail::extract_char_traits::value, - BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits::trait_t, - BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits::trait_t - >::type traits; + BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits, + BOOST_DEDUCED_TYPENAME boost::detail::extract_char_traits + >::type::trait_t traits; typedef boost::type_traits::ice_and< boost::is_same::value, // source is not a wide character based type @@ -653,7 +653,7 @@ namespace boost { BOOST_STATIC_ASSERT(!std::numeric_limits::is_signed); #endif - typedef typename Traits::int_type int_type; + typedef BOOST_DEDUCED_TYPENAME Traits::int_type int_type; CharT const czero = lcast_char_constants::zero; int_type const zero = Traits::to_int_type(czero); BOOST_DEDUCED_TYPENAME boost::mpl::if_c<