Fix gcc warnings, and use the correct facet!

[SVN r29831]
This commit is contained in:
John Maddock
2005-06-28 15:31:33 +00:00
parent b2e8ee918f
commit f353225685
2 changed files with 2 additions and 2 deletions

View File

@ -1397,7 +1397,7 @@ charT basic_regex_parser<charT, traits>::unescape_character()
int i = this->m_traits.toi(m_position, m_end, 16);
if((m_position == m_end)
|| (i < 0)
|| ((std::numeric_limits<charT>::is_specialized) && (i > (std::numeric_limits<charT>::max)()))
|| ((std::numeric_limits<charT>::is_specialized) && (charT(i) > (std::numeric_limits<charT>::max)()))
|| (this->m_traits.syntax_type(*m_position) != regex_constants::syntax_close_brace))
{
fail(regex_constants::error_badbrace, m_position - m_base);

View File

@ -967,7 +967,7 @@ template <class charT>
int cpp_regex_traits<charT>::toi(const charT*& first, const charT* last, int radix)const
{
// we do NOT want to parse any thousands separators inside the stream:
last = std::find(first, last, BOOST_USE_FACET(std::numpunct<char>, m_pimpl->m_is.getloc()).thousands_sep());
last = std::find(first, last, BOOST_USE_FACET(std::numpunct<charT>, m_pimpl->m_is.getloc()).thousands_sep());
m_pimpl->m_sbuf.pubsetbuf(const_cast<charT*>(static_cast<const charT*>(first)), static_cast<std::streamsize>(last-first));
m_pimpl->m_is.clear();
if(std::abs(radix) == 16) m_pimpl->m_is >> std::hex;