Commit Graph

204 Commits

Author SHA1 Message Date
65726f3d2f Define _CRT_SECURE_NO_WARNINGS instead of using wcscpy_s. Fixes #219. 2024-09-02 10:07:29 +03:00
d3697ab023 Fix deprecated-declarations error on clang-win 2024-08-22 23:28:35 -05:00
6579375f35 Remove outdated C++03 code. 2024-03-23 17:45:04 +00:00
372d3f7a7e Drop redundant config check. 2022-12-14 18:39:17 +00:00
362c85cf66 Add swprintf workarounds. 2022-12-14 13:06:33 +00:00
430419705b Simplify snprintf workaround usage.
Via boost/core/snprintf.hpp
Remove some obsolete workarounds.
Remove tabs in files.
Supersedes https://github.com/boostorg/regex/pull/188.
2022-12-13 18:48:59 +00:00
86b2fbe600 Tweak CI script. 2022-12-12 18:06:45 +00:00
6213ff03fc Fix macro redefinition. 2022-12-09 18:35:37 +00:00
3e4bcb75b6 Add testing of standalone mode.
Allow tests to be built in standalone mode.
Update CI.
Update docs.
2022-12-09 18:24:24 +00:00
a142dfecda Call snprintf when available in posix_api.cpp.
Fixes https://github.com/boostorg/regex/issues/184.
2022-12-02 17:25:16 +00:00
c23e7b857a Add missing #include.
Fixes https://github.com/boostorg/regex/issues/183
2022-12-02 17:10:45 +00:00
c24967709d Reinstate many workarounds to get older msvc versions compiling. 2020-12-13 18:03:47 +00:00
dba05b4d5b Remove more old code and enable standalone mode. 2020-12-10 16:47:08 +00:00
957dc5b79c Remove a lot of boost dependencies and workarounds. 2020-12-01 18:57:42 +00:00
678b3f5c4d Make regex_raw_buffer header only. 2020-11-30 13:21:49 +00:00
49e8067b80 Make the contents of regex.hpp all inline. 2020-11-29 19:10:05 +00:00
9d64cf60ff Make icu.hpp header only. 2020-11-28 18:28:29 +00:00
c9d389014a Make w32_regex_traits.hpp header only. 2020-11-28 16:51:39 +00:00
ddb682a208 Make cpp_regex_traits all inline. 2020-11-27 18:13:59 +00:00
27d2853615 Make c_regex_traits all inline.
Fix some C++20 issues.
2020-11-26 20:05:38 +00:00
1bb29f2134 Remove external template instantiation. 2020-11-26 17:00:04 +00:00
c3ab6405ad Merge branch 'use-boost-override' of https://github.com/EugeneZelenko/regex into develop
Resolved Conflicts:
	include/boost/regex/v4/cpp_regex_traits.hpp
	src/wc_regex_traits.cpp
2020-10-12 19:34:55 +01:00
c9d33026f3 Use BOOST_OVERRIDE to fix GCC -Wsuggest-override and Clang-tidy modernize-use-override warnings.
Also fixed Clang-tidy modernize-redundant-void-arg, readability-container-size-empty, and some readability-simplify-boolean-expr warnings.
Alphabetical order of STL headers.
Fix some misspellings.
2020-05-25 17:04:15 -07:00
cc09733d03 Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers. 2020-03-31 17:42:38 -04:00
afc4229234 Fix recursive expressions where the recursion appears more than once.
Fixes https://github.com/boostorg/regex/issues/87.
Also fix some more msvc warnings.
2020-01-23 19:24:33 +00:00
f64c22870f Fix exception specification and msvc warning push/pop. 2020-01-21 10:14:37 +00:00
2cd947f7c4 Suppress msvc warnings.
Fixes: https://github.com/boostorg/regex/issues/80
2020-01-20 19:51:46 +00:00
082437d4fd Merge branch 'develop' into staticptrfix 2020-01-07 19:00:38 +00:00
3168641320 Avoid generating pointers in writeable data section.
They increase memory consumption and make exploits
easier and are completely unnecessary.
Avoid them by either avoiding the pointer indirection
completely by using char arrays for strings instead
of char pointers, convert "static" pointer variables
to simple local variables, or mark the array of
pointers as const instead of just the things pointed to.
2019-11-08 11:18:43 +01:00
3d72b06e9d regex_traits_defaults: Do not export arrays only used in same compilation unit.
Exporting variables is unreliable on some platforms including Windows,
and it seems can cause compilation errors in some cases.
Also symbols should not be exported unnecessarily purely on principle.
It would even be possible to move the arrays into the function, but
as they are a bit large that seems to be worse for readability.
2019-11-08 11:11:01 +01:00
f4e1ff192f Fix potential double-definition of WIN32_LEAN_AND_MEAN macro 2018-11-09 16:08:07 -08:00
8a31a996b8 Merge pull request #63 from jeking3/warnings
resolve some warnings
2018-08-25 18:11:20 +01:00
6369c3c5ee Merge pull request #51 from freiling/develop
Move BOOST_REGEX_DETAIL_NS::RegExData::type_pf cases out of BOOST_REG…
2018-07-22 19:04:52 +01:00
39f1cc0238 resolve some warnings 2018-07-20 18:29:11 +00:00
59d501b07b Regex: fix integer shift warning/error in icu.cpp 2017-12-23 19:18:08 +00:00
b41d9dc323 Move BOOST_REGEX_DETAIL_NS::RegExData::type_pf cases out of BOOST_REGEX_NO_FILEITER to avoid compiler warnings about missing cases in case statement 2017-12-08 17:07:51 -08:00
47635d0733 Update icu.cpp
Conditionally replace deprecated/removed C++98 std::bind2nd by std::bind
2017-05-22 15:39:45 +02: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
526d9d4c2e Merge branch 'patch-3' of https://github.com/ya1gaurav/regex into develop 2015-10-23 13:22:07 +01:00
5fa0354cd8 Check return value of sprintf again.
At other places return value of sprintf is checked, but missed here.
2015-10-20 14:54:48 +05:30
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
d8c95a9950 Change POSIX API's so regcomp doesn't check for magic value and read potentially uninitialized memory.
See https://svn.boost.org/trac/boost/ticket/11472.
2015-09-25 12:41:02 +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
eaeb38c7e9 Remove use of register keyword as it's deprecated in C++11. 2015-03-19 19:07:00 +00:00
39aa10d82d Fix for: https://github.com/boostorg/regex/pull/9 2014-12-31 19:31:20 +00:00
88107e2c7b Revised tentative fix for VC11/12 failures which occur when calling wcsxfrm for "\0". 2014-01-22 19:00:40 +00:00
0983ff065e Fix generic mutex usage, see https://svn.boost.org/trac/boost/ticket/9461. 2013-12-18 18:15:41 +00:00
937cd366c5 BREAKING CHANGE: change mark_count to do what's documented (and what the std does).
See https://svn.boost.org/trac/boost/ticket/9227.
2013-12-14 17:43:24 +00:00