Re: [Boost-bugs] [Boost C++ Libraries] #3459: Xpressive - Redundant search pattern causes fatal crash

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3459: Xpressive - Redundant search pattern causes fatal crash
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-09-17 16:05:41


#3459: Xpressive - Redundant search pattern causes fatal crash
----------------------------------------------------+-----------------------
  Reporter: Eric Schwarz <master.universe@…> | Owner: eric_niebler
      Type: Bugs | Status: closed
 Milestone: Boost 1.41.0 | Component: xpressive
   Version: Boost 1.40.0 | Severity: Showstopper
Resolution: invalid | Keywords: Xpressive core dumped fatal crash
----------------------------------------------------+-----------------------

Comment(by eric_niebler):

 A pattern may contain a character set (which begins with {{{'['}}} and
 ends with {{{']'}}}). A character set may contain a nested posix character
 set (which begins with "[:" and ends with ":]"). Xpressive's regex parser
 sees the leading '[' and parses the rest as a character set containing the
 characters ':', 'd', 'i', 'g', 'i', and 't' (very much not what you want,
 but perfectly correct according to the ECMA-262 specification). Now it
 reads ":]" as a single token and, having found a closing posix charset
 bracket without an opening one, it throws an exception.

 I repeat: you meant "[[:digit:]]". If you still disagree, please back up
 your argument with the relevant portion of ECMA-262.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/3459#comment:3>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:01 UTC