Commit Graph

451 Commits

Author SHA1 Message Date
ae9f38e178 de-fuzz: Failed Pearl verbs should fail better and louder. 2017-02-18 13:04:34 +00:00
d70b7bcefe de-fuzz: fix infinite recursion when analysing tail-recursive expressions. 2017-02-16 19:24:22 +00:00
7f89a8f3b8 de-fuzz: add missing typename qualifiers to previous fix. 2017-02-15 19:48:56 +00:00
edd94320c7 de-fuzz: prevent infinite recursion in recursive expressions (case 14). 2017-02-15 19:44:41 +00:00
b05fafe1c5 de-fuzz: improve set creation so as not to allow duplicate characters. 2017-02-14 19:41:35 +00:00
febd44ddd6 de-fuzz, first fix for issue 14.
Make zeros in character set a single character long only.
2017-02-14 18:13:32 +00:00
2cb49b97da de-fuzz: Fix case 0 again. 2017-02-14 17:38:47 +00:00
8337584087 De-Fuzz: Fixes for issues 0 and 3 from #12818:
Prevent left shifting by more bits than there are in type unsigned, and
Check that alternative points to a valid state before accessing it: we may not have constructed that state yet in a fail situation.
2017-02-12 19:57:35 +00:00
e215c603ad Use the same calling convention for all msvc clones. 2017-02-09 18:24:21 +00:00
4bfdae4a9f Change config so all msvc compatible compilers use the same algorithm.
This *might* make msvc builds binary compatible with Intel or Clang clients.
See https://svn.boost.org/trac/boost/ticket/12233.
2017-02-08 19:20:04 +00:00
d92e940ade Fixed missing noreturn 2016-09-01 19:55:40 +03:00
0f128c2a89 Fix missing variable name in concept checks. 2016-08-07 18:33:59 +01:00
cc21bf9283 Fix Oracle C++ concept failures 2016-08-01 12:24:00 +00:00
a824b7d236 Fix copying of extra match data when using ICU.
See: https://svn.boost.org/trac/boost/ticket/12130
2016-06-12 13:09:12 +01:00
7719dedbaf Fix buffer over-run error when parsing invalid regex.
See: https://svn.boost.org/trac/boost/ticket/12222.
2016-06-09 19:00:29 +01:00
9059bfb5c6 Fix case-sensitivity change behaviour.
See https://svn.boost.org/trac/boost/ticket/11205.
Update docs to match.
2016-03-14 19:22:18 +00:00
955d077d2b Allow types wider than int in \x{} expressions (for char32_t etc).
Fixes: https://svn.boost.org/trac/boost/ticket/11988.
2016-02-17 18:58:05 +00:00
d8af53e222 restored missing header 2015-12-31 15:48:01 -08:00
a0dfd81516 Lockfree mem_block_cache only active if std::atomic is available 2015-12-31 15:46:20 -08:00
3f14031142 Updated with platform checks 2015-12-15 14:26:03 -08:00
b9f55efe98 Made the mem_cache_block lockfree
This *significantly* improves parallel performance of regex.
Currently if I have a large number of threads all using regexes; even if
they are using idependent regex objects, performance is still extremely poor
due to the lock inside of the mem_block_cache.
2015-12-08 21:17:50 -08:00
eb729f6557 Disable all Win32 API usage on Windows runtime for now, but see also: https://github.com/boostorg/regex/pull/22 for a possible more compete solution. 2015-11-07 09:13:35 +00:00
2a525e5aa6 avoid duplicate check of markid.
Markid is already checked to be >0.
2015-11-03 14:12:17 +05:30
e824ddb35b Remove redundant check and make it an assert. 2015-10-23 13:27:01 +01:00
7cbef4a79b Add missing include. 2015-10-22 18:03:03 +01:00
e5986b8f76 Tentative VC7.1 workaround. 2015-10-22 11:29:55 +01:00
6d2be646d8 universal-windows: Do not build w32_regex_traits
Since Vista LCID has been deprecated and locales are now using string-names,
this makes the effort to support w32_regex_traits quite large, therefore we
opt to disable w32_regex_traits right now when targeting universal-windows.
2015-10-08 10:22:44 +02:00
541bcde27f universal-windows: Disable deprecated fileiter 2015-10-08 10:05:20 +02:00
c1d2d1a736 universal-windows: Use C++ locale 2015-10-08 10:05:19 +02:00
ffac6a2035 universal-windows: Do not define BOOST_REGEX_HAS_OTHER_WCHAR_T
Just as on VC10 this causes linker errors with std::collate<unsigned short>::id.
2015-10-08 09:37:16 +02:00
3b461992b4 regex: Add dependency on boost.predef 2015-10-08 09:36:26 +02:00
a307fd7077 Fix msvc warning. 2015-10-06 13:17:01 +01:00
f617c73e9a Fix some GCC and clang warnings introduced by the new code 2015-10-06 12:46:09 +01:00
201d3a424e Add recursive implementation of THEN. 2015-10-05 18:27:37 +01:00
7a4e883675 Get THEN working for non-recursive implementation.
Fix various bugs in the other verbs exposed by new tests.
2015-10-04 19:28:25 +01:00
9a36e035f2 Add support for PRUNE and SKIP (no MARK's though). 2015-10-01 18:34:59 +01:00
83140ddbed Fix up recursive implementation of ACCEPT and COMMIT. 2015-09-30 18:47:59 +01:00
b208ef4eed Get commit working in recursive mode. 2015-09-29 19:20:09 +01:00
c281c9cc40 Add COMMIT support plus lots of tests. 2015-09-29 17:40:43 +01:00
2580fb035f Add support for ACCEPT verb. 2015-09-26 18:47:39 +01:00
b557febb0e Start adding Perl verb support with FAIL as the first supported verb. 2015-09-25 19:30:20 +01:00
94c7d4a38a Fix start of extended character range.
See https://svn.boost.org/trac/boost/ticket/11524
2015-09-24 19:01:44 +01:00
b9ee7a2f2e Oracle compiler in C++11 mode doesn't like external template instances in shared library. 2015-08-17 19:28:21 +01:00
6ffcc5ede0 Change detail namespace.
Big search and replace to change name of internal namepace so it's mangled with the Boost version number - the aim is to reduce the chances of mixing different header and library versions.
2015-04-04 19:10:37 +01:00
297e87360c Fix for bug in recursive expressions, see http://lists.boost.org/Archives/boost/2015/03/221018.php 2015-03-24 19:09:17 +00:00
74d6318135 Add missing function bodies for sub_match::begin/end and enhance tests. 2015-03-19 19:50:00 +00:00
668279010d Add workaround for broken Cygwin ctype facet, plus some warning suppression. 2015-03-19 19:06:26 +00:00
3fde6e8ddd Make sub_match a valid range as per https://svn.boost.org/trac/boost/ticket/11036 2015-03-19 18:14:41 +00:00
f6a9bce728 Fix icu behaviour with partial matches. See https://svn.boost.org/trac/boost/ticket/10114 2014-12-02 09:31:42 +00:00
115c4e7f42 Fix typo, see https://svn.boost.org/trac/boost/ticket/10268 2014-11-13 11:23:12 +00:00