id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 3586,Use of Greedy quantifiers in Quoted Expressions locks up at regex compile,nmaximillian@…,Eric Niebler,"The following will not compile: \Q.*\E and causes the program to lockup at the compile step. I have attempted other usages: '\Qh*\E', '\Q.+\E', '\Q+\E', '\Q*\E' etc. and they all lock-up on compile. Note that escaping the quantifier will allow it to compile (but it is a different expression): '\Q.\*\E' -- compiles but will only match '.\*' not '.*' {{{ #include #include using namespace boost::xpressive; int main() { std::string hello( ""hello .* world!"" ); std::cout << ""compile regex"" << std::endl; sregex rex = sregex::compile( ""\\Q.*\\E"" ); smatch what; std::cout << ""Get Iterator"" << std::endl; sregex_iterator cur( hello.begin(), hello.end(), rex ); sregex_iterator end; std::cout << ""begin search"" << std::endl; while( cur != end ) { smatch const &what = *cur; std::cout << ""found: "" << what[0] << '\n'; cur++; } return 0; } }}} ",Bugs,closed,To Be Determined,xpressive,Boost 1.38.0,Problem,fixed,,