Ticket #8474: xpressive.patch
File xpressive.patch, 5.5 KB (added by , 10 years ago) |
---|
-
boost/xpressive/detail/dynamic/parse_charset.hpp
246 246 case token_charset_hyphen: 247 247 case token_charset_invert: 248 248 begin = iprev2; // un-get these tokens and fall through 249 BOOST_FALLTHROUGH; 249 250 case token_literal: 250 251 ch_next = *begin++; 251 252 BOOST_XPR_ENSURE_(ch_prev <= ch_next, error_range, "invalid charset range"); … … 264 265 chset.set_range(ch_prev, esc.ch_, rxtraits, icase); 265 266 continue; 266 267 } 267 case token_charset_end: // fall through 268 BOOST_FALLTHROUGH; 269 case token_charset_end: 268 270 default: // not a range. 269 271 begin = iprev; // backup to hyphen token 270 272 chset.set_char(ch_prev, rxtraits, icase); -
boost/xpressive/detail/dynamic/parser_traits.hpp
394 394 case BOOST_XPR_CHAR_(char_type, 'm'): this->flag_(!set, single_line); break; 395 395 case BOOST_XPR_CHAR_(char_type, 's'): this->flag_(!set, not_dot_newline); break; 396 396 case BOOST_XPR_CHAR_(char_type, 'x'): this->flag_(set, ignore_white_space); break; 397 case BOOST_XPR_CHAR_(char_type, ':'): ++begin; // fall-through397 case BOOST_XPR_CHAR_(char_type, ':'): ++begin; BOOST_FALLTHROUGH; 398 398 case BOOST_XPR_CHAR_(char_type, ')'): return token_no_mark; 399 case BOOST_XPR_CHAR_(char_type, '-'): if(false == (set = !set)) break; // else fall-through399 case BOOST_XPR_CHAR_(char_type, '-'): if(false == (set = !set)) break; BOOST_FALLTHROUGH; 400 400 default: BOOST_THROW_EXCEPTION(regex_error(error_paren, "unknown pattern modifier")); 401 401 } 402 402 while(BOOST_XPR_ENSURE_(++begin != end, error_paren, "incomplete extension")); -
boost/xpressive/match_results.hpp
1096 1096 case BOOST_XPR_CHAR_(char_type, ':'): 1097 1097 if(metacolon) 1098 1098 { 1099 BOOST_FALLTHROUGH; 1099 1100 case BOOST_XPR_CHAR_(char_type, ')'): 1100 1101 ++cur; 1101 1102 return out; 1102 1103 } 1103 // else fall-through1104 BOOST_FALLTHROUGH; 1104 1105 1105 1106 default: 1106 1107 *out++ = *cur++; -
boost/xpressive/regex_compiler.hpp
282 282 break; 283 283 case 2: 284 284 seq = detail::make_dynamic<BidiIter>(alternate_matcher()) | seq; 285 // fall-through285 BOOST_FALLTHROUGH; 286 286 default: 287 287 seq |= this->parse_sequence(tmp, end); 288 288 } … … 322 322 break; 323 323 324 324 case token_negative_lookahead: 325 negative = true; // fall-through 325 negative = true; 326 BOOST_FALLTHROUGH; 326 327 case token_positive_lookahead: 327 328 lookahead = true; 328 329 break; 329 330 330 331 case token_negative_lookbehind: 331 negative = true; // fall-through 332 negative = true; 333 BOOST_FALLTHROUGH; 332 334 case token_positive_lookbehind: 333 335 lookbehind = true; 334 336 break; … … 342 344 { 343 345 switch(this->traits_.get_token(begin, end)) 344 346 { 345 case token_group_end: return this->parse_atom(begin, end); 346 case token_escape: BOOST_XPR_ENSURE_(begin != end, error_escape, "incomplete escape sequence"); 347 case token_literal: ++begin; 348 default:; 347 case token_group_end: 348 return this->parse_atom(begin, end); 349 case token_escape: 350 BOOST_XPR_ENSURE_(begin != end, error_escape, "incomplete escape sequence"); 351 BOOST_FALLTHROUGH; 352 case token_literal: 353 ++begin; 354 break; 355 default: 356 break; 349 357 } 350 358 } 351 359 break; … … 688 696 { 689 697 switch(this->traits_.get_token(begin, end)) 690 698 { 691 case token_quote_meta_end: return string_type(old_begin, old_end); 692 case token_escape: BOOST_XPR_ENSURE_(begin != end, error_escape, "incomplete escape sequence"); 699 case token_quote_meta_end: 700 return string_type(old_begin, old_end); 701 case token_escape: 702 BOOST_XPR_ENSURE_(begin != end, error_escape, "incomplete escape sequence"); 703 BOOST_FALLTHROUGH; 693 704 case token_invalid_quantifier: 694 case token_literal: ++begin; 695 default:; 705 case token_literal: 706 ++begin; 707 BOOST_FALLTHROUGH; 708 default: 709 break; 696 710 } 697 711 } 698 712 return string_type(old_begin, begin);