Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r84015 - trunk/boost/regex/v4
From: john_at_[hidden]
Date: 2013-04-22 13:29:50


Author: johnmaddock
Date: 2013-04-22 13:29:50 EDT (Mon, 22 Apr 2013)
New Revision: 84015
URL: http://svn.boost.org/trac/boost/changeset/84015

Log:
Apply patch from #8476.
Fixes #8476.
Text files modified:
   trunk/boost/regex/v4/basic_regex_creator.hpp | 8 ++++++++
   trunk/boost/regex/v4/basic_regex_parser.hpp | 6 ++++++
   trunk/boost/regex/v4/regex_format.hpp | 2 ++
   3 files changed, 16 insertions(+), 0 deletions(-)

Modified: trunk/boost/regex/v4/basic_regex_creator.hpp
==============================================================================
--- trunk/boost/regex/v4/basic_regex_creator.hpp (original)
+++ trunk/boost/regex/v4/basic_regex_creator.hpp 2013-04-22 13:29:50 EDT (Mon, 22 Apr 2013)
@@ -739,13 +739,16 @@
          // set the state_id of this repeat:
          static_cast<re_repeat*>(state)->state_id = m_repeater_id++;
          // fall through:
+ BOOST_FALLTHROUGH;
       case syntax_element_alt:
          std::memset(static_cast<re_alt*>(state)->_map, 0, sizeof(static_cast<re_alt*>(state)->_map));
          static_cast<re_alt*>(state)->can_be_null = 0;
          // fall through:
+ BOOST_FALLTHROUGH;
       case syntax_element_jump:
          static_cast<re_jump*>(state)->alt.p = getaddress(static_cast<re_jump*>(state)->alt.i, state);
          // fall through again:
+ BOOST_FALLTHROUGH;
       default:
          if(state->next.i)
             state->next.p = getaddress(state->next.i, state);
@@ -942,6 +945,7 @@
             }
          }
          // fall through:
+ BOOST_FALLTHROUGH;
       default:
          state = state->next.p;
       }
@@ -1154,12 +1158,14 @@
             }
             m_recursion_checks[recursion_sub] = true;
             // fall through, can't handle nested recursion here...
+ BOOST_FALLTHROUGH;
          }
       case syntax_element_backref:
          // can be null, and any character can match:
          if(pnull)
             *pnull |= mask;
          // fall through:
+ BOOST_FALLTHROUGH;
       case syntax_element_wild:
       {
          // can't be null, any character can match:
@@ -1360,6 +1366,7 @@
             break;
          }
          // otherwise fall through:
+ BOOST_FALLTHROUGH;
       default:
          state = state->next.p;
       }
@@ -1538,6 +1545,7 @@
          if(this->m_has_backrefs == 0)
             static_cast<re_repeat*>(state)->leading = true;
          // fall through:
+ BOOST_FALLTHROUGH;
       default:
          return;
       }

Modified: trunk/boost/regex/v4/basic_regex_parser.hpp
==============================================================================
--- trunk/boost/regex/v4/basic_regex_parser.hpp (original)
+++ trunk/boost/regex/v4/basic_regex_parser.hpp 2013-04-22 13:29:50 EDT (Mon, 22 Apr 2013)
@@ -370,6 +370,7 @@
          return true;
       }
       // Otherwise fall through:
+ BOOST_FALLTHROUGH;
    default:
       result = parse_literal();
       break;
@@ -624,6 +625,7 @@
          case 'w':
             negate = false;
             // fall through:
+ BOOST_FALLTHROUGH;
          case 'W':
             {
             basic_char_set<charT, traits> char_set;
@@ -641,6 +643,7 @@
          case 's':
             negate = false;
             // fall through:
+ BOOST_FALLTHROUGH;
          case 'S':
             return add_emacs_code(negate);
          case 'c':
@@ -673,6 +676,7 @@
    case regex_constants::escape_type_not_class:
       negate = true;
       // fall through:
+ BOOST_FALLTHROUGH;
    case regex_constants::escape_type_class:
       {
 escape_type_class_jump:
@@ -743,6 +747,7 @@
    case regex_constants::escape_type_not_property:
       negate = true;
       // fall through:
+ BOOST_FALLTHROUGH;
    case regex_constants::escape_type_property:
       {
          ++m_position;
@@ -1960,6 +1965,7 @@
    case regex_constants::syntax_or:
       m_mark_reset = m_mark_count;
       // fall through:
+ BOOST_FALLTHROUGH;
    case regex_constants::syntax_colon:
       //
       // a non-capturing mark:

Modified: trunk/boost/regex/v4/regex_format.hpp
==============================================================================
--- trunk/boost/regex/v4/regex_format.hpp (original)
+++ trunk/boost/regex/v4/regex_format.hpp 2013-04-22 13:29:50 EDT (Mon, 22 Apr 2013)
@@ -284,6 +284,7 @@
             break;
          }
          // fall through, not a special character:
+ BOOST_FALLTHROUGH;
       default:
          put(*m_position);
          ++m_position;
@@ -355,6 +356,7 @@
       have_brace = true;
       ++m_position;
       // fall through....
+ BOOST_FALLTHROUGH;
    default:
       // see if we have a number:
       {


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk