Boost C++ Libraries: Ticket #13493: boost::regex doesn't accept a regular expression anymore https://svn.boost.org/trac10/ticket/13493 <p> I recently switched from Boost 1.61 to Boost 1.66 and discovered the following problem with boost::regex in 1.66: A regular expression is recognized as erroneous, i. e. after construction boost::regex::status() returns a value != 0, but the same expression was accepted in previous boost versions. Calling boost::regex_search() with such a erroneous boost::regex object leads to a crash. </p> <p> The expression is: </p> <pre class="wiki">([0-9]*)\.([0-9]*)(\.([0-9]*)(\.([0-9]*))?)? </pre><p> My C++ code looks as follows: </p> <pre class="wiki">static const boost::regex versionRegex( "([0-9]*)\\.([0-9]*)(\\.([0-9]*)(\\.([0-9]*))?)?" ); assert( versionRegex.status() == 0 &amp;&amp; "the regular expression must be valid" ); </pre><p> After switching the boost version to 1.66 the assertion above fails. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/13493 Trac 1.4.3