Fix problem with match_any and POSIX-style matches (match results structure wasn't getting filled in).

Fixed problem with gcc in -pedantic mode.


[SVN r26348]
This commit is contained in:
John Maddock
2004-11-29 13:50:17 +00:00
parent 916dbeadbf
commit ab6f20486b
2 changed files with 8 additions and 3 deletions

View File

@ -60,7 +60,11 @@ template class BOOST_REGEX_DECL reg_expression< BOOST_REGEX_CHAR_T >;
#elif (defined(BOOST_MSVC) && defined(_MSC_EXTENSIONS)) || defined(__GNUC__)
# ifndef BOOST_REGEX_INSTANTIATE
# define template extern template
# ifdef __GNUC__
# define template __extension__ extern template
# else
# define template extern template
# endif
# endif
# ifdef BOOST_MSVC

View File

@ -413,10 +413,11 @@ bool perl_matcher<BidiIterator, Allocator, traits, Allocator2>::match_match()
m_presult->set_second(position);
pstate = 0;
m_has_found_match = true;
if((m_match_flags & (match_posix|match_any)) == match_posix)
if((m_match_flags & match_posix) == match_posix)
{
m_result.maybe_assign(*m_presult);
return false;
if((m_match_flags & match_any) == 0)
return false;
}
#ifdef BOOST_REGEX_MATCH_EXTRA
if(match_extra & m_match_flags)