
Ovanes Markarian wrote:
Hi!
I am trying to match a function body and find out if the params or return type have specific class name patterns. Therefore I did a really huge regex... sorry if is not so readable, but I used defines to make as little errors as possible...
This is the boost::regex function where it crashes:
template
bool perl_matcher ::match_imp() { // initialise our stack if we are non-recursive: #ifdef BOOST_REGEX_NON_RECURSIVE save_state_init init(&m_stack_base, &m_backup_state); used_block_count = BOOST_REGEX_MAX_BLOCKS; #if !defined(BOOST_NO_EXCEPTIONS) try{ #endif #endif // reset our state machine: position = base; search_base = base; state_count = 0; m_match_flags |= regex_constants::match_all;
//LINE 162 perl_matcher_common.hpp !!! m_presult->set_size((m_match_flags & match_nosubs) ? 1 : re.mark_count(), search_base, last);
Call from this line causes access violation: Unhandled exception at 0x104817fd in some_app.exe: 0xC0000005: Access violation writing location 0x56394ab7.
I re-built regex with BOOST_REGEX_MATCH_EXTRA uncommented in user.hpp.
Would be really nice to receive some comments or suggestions.
I don't see anything obvious, if you put this together as a standalone cpp file that I can build/reproduce the error with then I'll look into it. John.