diff --git a/include/boost/regex/v4/perl_matcher_non_recursive.hpp b/include/boost/regex/v4/perl_matcher_non_recursive.hpp index 6af90fb7..88bceed3 100644 --- a/include/boost/regex/v4/perl_matcher_non_recursive.hpp +++ b/include/boost/regex/v4/perl_matcher_non_recursive.hpp @@ -1719,6 +1719,7 @@ bool perl_matcher::unwind_recursion(bool r) recursion_stack.back().idx = pmp->recursion_id; recursion_stack.back().preturn_address = pmp->preturn_address; recursion_stack.back().results = pmp->results; + recursion_stack.back().location_of_start = position; } boost::BOOST_REGEX_DETAIL_NS::inplace_destroy(pmp++); m_backup_state = pmp; diff --git a/include/boost/regex/v4/perl_matcher_recursive.hpp b/include/boost/regex/v4/perl_matcher_recursive.hpp index 023e62dd..7cc54ca2 100644 --- a/include/boost/regex/v4/perl_matcher_recursive.hpp +++ b/include/boost/regex/v4/perl_matcher_recursive.hpp @@ -996,6 +996,7 @@ bool perl_matcher::match_match() recursion_stack.push_back(recursion_info()); recursion_stack.back().preturn_address = saved_state; recursion_stack.back().results = *m_presult; + recursion_stack.back().location_of_start = position; return false; } return true;