diff --git a/build/Jamfile.v2 b/build/Jamfile.v2
index bcb69109..ee8e3b34 100644
--- a/build/Jamfile.v2
+++ b/build/Jamfile.v2
@@ -26,7 +26,6 @@ rule path_options ( properties * )
return $(result) ;
}
-
#
# ICU configuration:
#
@@ -48,88 +47,50 @@ if ! $(disable-icu)
}
else
{
- lib icuuc : : shared shared @path_options ;
- lib icuuc : : msvc debug icuucd shared shared @path_options ;
- lib icuuc : : intel windows debug icuucd shared shared @path_options ;
+ lib icuuc : : shared @path_options ;
+ lib icuuc : : msvc debug icuucd shared @path_options ;
+ lib icuuc : : intel windows debug icuucd shared @path_options ;
+ lib icuuc : : sicuuc static @path_options ;
+ lib icuuc : : msvc debug sicuucd static @path_options ;
+ lib icuuc : : intel windows debug sicuucd static @path_options ;
lib icuuc : : this_is_an_invalid_library_name ;
- lib icudt : : icudata shared shared @path_options ;
- lib icudt : : icudt msvc shared shared @path_options ;
- lib icudt : : icudt intel windows shared shared @path_options ;
+ lib icudt : : icudata shared @path_options ;
+ lib icudt : : icudt msvc shared @path_options ;
+ lib icudt : : icudt intel windows shared @path_options ;
+ lib icudt : : sicudata static @path_options ;
+ lib icudt : : sicudt msvc static @path_options ;
+ lib icudt : : sicudt intel windows static @path_options ;
lib icudt : : this_is_an_invalid_library_name ;
- lib icuin : : icui18n shared shared @path_options ;
- lib icuin : : msvc debug icuind shared shared @path_options ;
- lib icuin : : msvc icuin shared shared @path_options ;
- lib icuin : : intel windows debug icuind shared shared @path_options ;
- lib icuin : : intel windows icuin shared shared @path_options ;
+ lib icuin : : icui18n shared @path_options ;
+ lib icuin : : msvc debug icuind shared @path_options ;
+ lib icuin : : msvc icuin shared @path_options ;
+ lib icuin : : intel windows debug icuind shared @path_options ;
+ lib icuin : : intel windows icuin shared @path_options ;
+ lib icuin : : sicui18n static @path_options ;
+ lib icuin : : msvc debug sicuind static @path_options ;
+ lib icuin : : msvc sicuin static @path_options ;
+ lib icuin : : intel windows debug sicuind static @path_options ;
+ lib icuin : : intel windows sicuin static @path_options ;
lib icuin : : this_is_an_invalid_library_name ;
- if $(ICU_PATH)
- {
- icuucd_name = [ GLOB $(ICU_PATH)/bin : icuuc??d.dll ] ;
- if ! $(icuucd_name)
- {
- icuucd_name = [ GLOB $(ICU_PATH)/bin64 : icuuc??d.dll ] ;
- }
- icuuc_name = [ GLOB $(ICU_PATH)/bin : icuuc??.dll ] ;
- if ! $(icuuc_name)
- {
- icuuc_name = [ GLOB $(ICU_PATH)/bin64 : icuuc??.dll ] ;
- }
- icudt_name = [ GLOB $(ICU_PATH)/bin : icudt??.dll ] ;
- if ! $(icudt_name)
- {
- icudt_name = [ GLOB $(ICU_PATH)/bin64 : icudt??.dll ] ;
- }
- icuin_name = [ GLOB $(ICU_PATH)/bin : icuin??.dll ] ;
- if ! $(icuin_name)
- {
- icuin_name = [ GLOB $(ICU_PATH)/bin64 : icuin??.dll ] ;
- }
- icuind_name = [ GLOB $(ICU_PATH)/bin : icuin??d.dll ] ;
- if ! $(icuind_name)
- {
- icuind_name = [ GLOB $(ICU_PATH)/bin64 : icuin??d.dll ] ;
- }
-
- #ECHO $(icuucd_name:B) $(icuuc_name:B) $(icudt_name:B) $(icuin_name:B) $(icuind_name:B) ;
- }
-
ICU_OPTS =
$(ICU_PATH)/include
- icuuc/shared/shared
- icudt/shared/shared
- icuin/shared/shared
+ shared:icuuc/shared
+ shared:icudt/shared
+ shared:icuin/shared
+ static:icuuc
+ static:icudt
+ static:icuin
BOOST_HAS_ICU=1
- shared
- # As of ICU-54 this does not work anymore (release mode):
- #msvc:/delayload:$(icuucd_name:B).dll
- #msvc:/delayload:$(icuuc_name:B).dll
- #msvc:/delayload:$(icudt_name:B).dll
- #msvc:/delayload:$(icuin_name:B).dll
- #msvc:/delayload:$(icuind_name:B).dll
- #msvc:delayimp.lib
+ static:U_STATIC_IMPLEMENTATION=1
;
}
}
-actions regex_simple_run_action
-{
- $(>) > $(<)
-}
-
-rule regex-run-simple ( sources + : args * : input-files * : requirements * : target-name )
-{
- exe $(target-name)_exe : $(sources) : $(requirements) ;
- explicit $(target-name)_exe ;
- make $(target-name).output : $(target-name)_exe : @regex_simple_run_action ;
- explicit $(target-name).output ;
- alias $(target-name) : $(target-name).output ;
-}
-
-regex-run-simple has_icu_test.cpp : : : $(ICU_OPTS) : has_icu ;
+unit-test has_icu : has_icu_test.cpp : $(ICU_OPTS) ;
explicit has_icu ;
alias icu_options : : : : [ check-target-builds has_icu : $(ICU_OPTS) : ] ;
@@ -157,8 +118,6 @@ SOURCES =
lib boost_regex : ../src/$(SOURCES) icu_options
:
shared:BOOST_REGEX_DYN_LINK=1
- #gcc-mw:static
- #gcc-mingw:static
gcc-cygwin:static
sun:static
;
diff --git a/build/has_icu_test.cpp b/build/has_icu_test.cpp
index 8d42e25c..31c964e7 100644
--- a/build/has_icu_test.cpp
+++ b/build/has_icu_test.cpp
@@ -18,9 +18,14 @@
#include
#if defined(_MSC_VER) && !defined(_DLL)
-#error "Mixing ICU with a static runtime doesn't work"
+//#error "Mixing ICU with a static runtime doesn't work"
#endif
+void print_error(UErrorCode err, const char* func)
+{
+ std::cerr << "Error from function " << func << " with error: " << ::u_errorName(err) << std::endl;
+}
+
int main()
{
// To detect possible binary mismatches between the installed ICU build, and whatever
@@ -31,8 +36,17 @@ int main()
UErrorCode err = U_ZERO_ERROR;
UChar32 c = ::u_charFromName(U_UNICODE_CHAR_NAME, "GREEK SMALL LETTER ALPHA", &err);
std::cout << (int)c << std::endl;
- if(err > 0) return err;
+ if(err > 0)
+ {
+ print_error(err, "u_charFromName");
+ return err;
+ }
U_NAMESPACE_QUALIFIER Locale l;
boost::scoped_ptr p_col(U_NAMESPACE_QUALIFIER Collator::createInstance(l, err));
+ if(err > 0)
+ {
+ print_error(err, "Collator::createInstance");
+ return err;
+ }
return err > 0 ? err : 0;
}
diff --git a/doc/history.qbk b/doc/history.qbk
index 17b43f57..df37a010 100644
--- a/doc/history.qbk
+++ b/doc/history.qbk
@@ -15,10 +15,17 @@ Currently open issues can be viewed [@https://svn.boost.org/trac/boost/query?sta
All issues including closed ones can be viewed [@https://svn.boost.org/trac/boost/query?status=assigned&status=closed&status=new&status=reopened&component=regex&order=priority&col=id&col=summary&col=status&col=type&col=milestone&col=component here].
-[h4 Boost.Regex-5.1.1]
+[h4 Boost.Regex-5.1.2]
+
+
+* Fix buffer over-run error when parsing certain invalid regexes, see [@https://svn.boost.org/trac/boost/ticket/12222 #12222].
+* Fix detection of ICU in library build, see [@https://svn.boost.org/trac/boost/ticket/12152 #12152].
+* Fix bug in case sensitivity change, see [@https://svn.boost.org/trac/boost/ticket/11940 #11940].
+* Allow types wider than int in `\x{}` expressions (for char32_t etc), see [@https://svn.boost.org/trac/boost/ticket/11988 #11988].
+
+[h4 Boost.Regex-5.1.1 (Boost-1.61.0)]
* Change to lockfree implementation of memory cache, see [@https://github.com/boostorg/regex/pull/23 PR#23].
-* Fix bug in case sensitivity change, see [@https://svn.boost.org/trac/boost/ticket/11940 #11940].
[h4 Boost.Regex-5.1.0 (Boost-1.60.0)]
diff --git a/doc/html/boost_regex/background_information.html b/doc/html/boost_regex/background_information.html
index ccf83eda..1e172aa6 100644
--- a/doc/html/boost_regex/background_information.html
+++ b/doc/html/boost_regex/background_information.html
@@ -4,8 +4,8 @@
Background Information
-
-
+
+
diff --git a/doc/html/boost_regex/background_information/acknowledgements.html b/doc/html/boost_regex/background_information/acknowledgements.html
index 1844f2ad..d556d29b 100644
--- a/doc/html/boost_regex/background_information/acknowledgements.html
+++ b/doc/html/boost_regex/background_information/acknowledgements.html
@@ -4,7 +4,7 @@
Acknowledgements
-
+
diff --git a/doc/html/boost_regex/background_information/examples.html b/doc/html/boost_regex/background_information/examples.html
index f8ce5687..21fbf7bd 100644
--- a/doc/html/boost_regex/background_information/examples.html
+++ b/doc/html/boost_regex/background_information/examples.html
@@ -4,7 +4,7 @@
Test and Example Programs
-
+
diff --git a/doc/html/boost_regex/background_information/faq.html b/doc/html/boost_regex/background_information/faq.html
index f54c918c..4cf59034 100644
--- a/doc/html/boost_regex/background_information/faq.html
+++ b/doc/html/boost_regex/background_information/faq.html
@@ -4,7 +4,7 @@
FAQ
-
+
diff --git a/doc/html/boost_regex/background_information/futher.html b/doc/html/boost_regex/background_information/futher.html
index ca17e02b..f844e77c 100644
--- a/doc/html/boost_regex/background_information/futher.html
+++ b/doc/html/boost_regex/background_information/futher.html
@@ -4,7 +4,7 @@
References and Further Information
-
+
diff --git a/doc/html/boost_regex/background_information/headers.html b/doc/html/boost_regex/background_information/headers.html
index bc8c5748..1bad39bd 100644
--- a/doc/html/boost_regex/background_information/headers.html
+++ b/doc/html/boost_regex/background_information/headers.html
@@ -4,7 +4,7 @@
Headers
-
+
diff --git a/doc/html/boost_regex/background_information/history.html b/doc/html/boost_regex/background_information/history.html
index 1cf10e32..c09a95e0 100644
--- a/doc/html/boost_regex/background_information/history.html
+++ b/doc/html/boost_regex/background_information/history.html
@@ -4,7 +4,7 @@
History
-
+
@@ -37,18 +37,34 @@
-
- Change to lockfree implementation of memory cache, see PR#23.
+ Fix buffer over-run error when parsing certain invalid regexes, see
+ #12222.
+
+-
+ Fix detection of ICU in library build, see #12152.
-
Fix bug in case sensitivity change, see #11940.
+-
+ Allow types wider than int in
\x{}
+ expressions (for char32_t etc), see #11988.
+
+-
+ Change to lockfree implementation of memory cache, see PR#23.
+
+
@@ -71,7 +87,7 @@
@@ -104,7 +120,7 @@
@@ -137,14 +153,14 @@
Fixed issue #8569.
@@ -152,7 +168,7 @@
#7644.
@@ -162,7 +178,7 @@
#6346.
@@ -171,7 +187,7 @@
expression.
@@ -181,7 +197,7 @@
#5736.
@@ -193,7 +209,7 @@
#5504.
@@ -211,7 +227,7 @@
#3890
-
@@ -247,7 +263,7 @@
branch resets and recursive regular expressions.
-
Fixed bug in partial matches of bounded repeats of '.'.
diff --git a/doc/html/boost_regex/background_information/locale.html b/doc/html/boost_regex/background_information/locale.html
index 0ee1bc01..8d7f64b5 100644
--- a/doc/html/boost_regex/background_information/locale.html
+++ b/doc/html/boost_regex/background_information/locale.html
@@ -4,7 +4,7 @@
Localization
-
+
diff --git a/doc/html/boost_regex/background_information/performance.html b/doc/html/boost_regex/background_information/performance.html
index aa868e17..dc5d626f 100644
--- a/doc/html/boost_regex/background_information/performance.html
+++ b/doc/html/boost_regex/background_information/performance.html
@@ -4,7 +4,7 @@
Performance
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
index 862abe19..3e9f4e92 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
@@ -4,7 +4,7 @@
Testing Perl searches (platform = Windows x64, compiler = Microsoft Visual C++ version 14.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
index c9bd9ab9..dfcb86ea 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_Perl_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
@@ -4,7 +4,7 @@
Testing Perl searches (platform = linux, compiler = GNU C++ version 5.1.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
index a025f045..3de31a36 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
@@ -4,7 +4,7 @@
Testing leftmost-longest searches (platform = Windows x64, compiler = Microsoft Visual C++ version 14.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
index 253af96c..0791ce8f 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_leftmost_longest_searches_platform_linux_compiler_GNU_C_version_5_1_0_.html
@@ -4,7 +4,7 @@
Testing leftmost-longest searches (platform = linux, compiler = GNU C++ version 5.1.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
index 1756715b..eac8b8a3 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
@@ -4,7 +4,7 @@
Testing simple Perl matches (platform = Windows x64, compiler = Microsoft Visual C++ version 14.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
index 0fd68453..22f4d6a0 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_simple_Perl_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
@@ -4,7 +4,7 @@
Testing simple Perl matches (platform = linux, compiler = GNU C++ version 5.1.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
index 32487345..4566c299 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_Windows_x64_compiler_Microsoft_Visual_C_version_14_0_.html
@@ -4,7 +4,7 @@
Testing simple leftmost-longest matches (platform = Windows x64, compiler = Microsoft Visual C++ version 14.0)
-
+
diff --git a/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html b/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
index 0f010ab6..62a24f08 100644
--- a/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
+++ b/doc/html/boost_regex/background_information/performance/section_Testing_simple_leftmost_longest_matches_platform_linux_compiler_GNU_C_version_5_1_0_.html
@@ -4,7 +4,7 @@
Testing simple leftmost-longest matches (platform = linux, compiler = GNU C++ version 5.1.0)
-
+
diff --git a/doc/html/boost_regex/background_information/redist.html b/doc/html/boost_regex/background_information/redist.html
index c2cf29c3..bd2526af 100644
--- a/doc/html/boost_regex/background_information/redist.html
+++ b/doc/html/boost_regex/background_information/redist.html
@@ -4,7 +4,7 @@
Redistributables
-
+
diff --git a/doc/html/boost_regex/background_information/standards.html b/doc/html/boost_regex/background_information/standards.html
index f73e099e..16f9a8b4 100644
--- a/doc/html/boost_regex/background_information/standards.html
+++ b/doc/html/boost_regex/background_information/standards.html
@@ -4,7 +4,7 @@
Standards Conformance
-
+
diff --git a/doc/html/boost_regex/background_information/thread_safety.html b/doc/html/boost_regex/background_information/thread_safety.html
index 5aeaad09..58b2e7c6 100644
--- a/doc/html/boost_regex/background_information/thread_safety.html
+++ b/doc/html/boost_regex/background_information/thread_safety.html
@@ -4,7 +4,7 @@
Thread Safety
-
+
diff --git a/doc/html/boost_regex/captures.html b/doc/html/boost_regex/captures.html
index c308c661..6d246daf 100644
--- a/doc/html/boost_regex/captures.html
+++ b/doc/html/boost_regex/captures.html
@@ -4,8 +4,8 @@
Understanding Marked Sub-Expressions and Captures
-
-
+
+
diff --git a/doc/html/boost_regex/configuration.html b/doc/html/boost_regex/configuration.html
index dac4fa3c..93602102 100644
--- a/doc/html/boost_regex/configuration.html
+++ b/doc/html/boost_regex/configuration.html
@@ -4,9 +4,9 @@
Configuration
-
-
-
+
+
+
diff --git a/doc/html/boost_regex/configuration/algorithm.html b/doc/html/boost_regex/configuration/algorithm.html
index e29f84e3..ef3644fc 100644
--- a/doc/html/boost_regex/configuration/algorithm.html
+++ b/doc/html/boost_regex/configuration/algorithm.html
@@ -4,7 +4,7 @@
Algorithm Selection
-
+
diff --git a/doc/html/boost_regex/configuration/compiler.html b/doc/html/boost_regex/configuration/compiler.html
index 6cd9f805..deeaa95d 100644
--- a/doc/html/boost_regex/configuration/compiler.html
+++ b/doc/html/boost_regex/configuration/compiler.html
@@ -4,7 +4,7 @@
Compiler Setup
-
+
diff --git a/doc/html/boost_regex/configuration/linkage.html b/doc/html/boost_regex/configuration/linkage.html
index a0d90b37..411b3302 100644
--- a/doc/html/boost_regex/configuration/linkage.html
+++ b/doc/html/boost_regex/configuration/linkage.html
@@ -4,7 +4,7 @@
Linkage Options
-
+
diff --git a/doc/html/boost_regex/configuration/locale.html b/doc/html/boost_regex/configuration/locale.html
index 4f13589c..6de8fb4f 100644
--- a/doc/html/boost_regex/configuration/locale.html
+++ b/doc/html/boost_regex/configuration/locale.html
@@ -4,7 +4,7 @@
Locale and traits class selection
-
+
diff --git a/doc/html/boost_regex/configuration/tuning.html b/doc/html/boost_regex/configuration/tuning.html
index 6a8b98ca..038b2309 100644
--- a/doc/html/boost_regex/configuration/tuning.html
+++ b/doc/html/boost_regex/configuration/tuning.html
@@ -4,7 +4,7 @@
Algorithm Tuning
-
+
diff --git a/doc/html/boost_regex/format.html b/doc/html/boost_regex/format.html
index 8070ea72..d14e9c43 100644
--- a/doc/html/boost_regex/format.html
+++ b/doc/html/boost_regex/format.html
@@ -4,8 +4,8 @@
Search and Replace Format String Syntax
-
-
+
+
diff --git a/doc/html/boost_regex/format/boost_format_syntax.html b/doc/html/boost_regex/format/boost_format_syntax.html
index 484612c7..0899e45b 100644
--- a/doc/html/boost_regex/format/boost_format_syntax.html
+++ b/doc/html/boost_regex/format/boost_format_syntax.html
@@ -4,7 +4,7 @@
Boost-Extended Format String Syntax
-
+
diff --git a/doc/html/boost_regex/format/perl_format.html b/doc/html/boost_regex/format/perl_format.html
index 26b870d8..eea0f195 100644
--- a/doc/html/boost_regex/format/perl_format.html
+++ b/doc/html/boost_regex/format/perl_format.html
@@ -4,7 +4,7 @@
Perl Format String Syntax
-
+
diff --git a/doc/html/boost_regex/format/sed_format.html b/doc/html/boost_regex/format/sed_format.html
index af9ed2bf..47defce0 100644
--- a/doc/html/boost_regex/format/sed_format.html
+++ b/doc/html/boost_regex/format/sed_format.html
@@ -4,7 +4,7 @@
Sed Format String Syntax
-
+
diff --git a/doc/html/boost_regex/install.html b/doc/html/boost_regex/install.html
index 3a3dc159..1278abc1 100644
--- a/doc/html/boost_regex/install.html
+++ b/doc/html/boost_regex/install.html
@@ -4,8 +4,8 @@
Building and Installing the Library
-
-
+
+
diff --git a/doc/html/boost_regex/introduction_and_overview.html b/doc/html/boost_regex/introduction_and_overview.html
index e95568c5..7faa27be 100644
--- a/doc/html/boost_regex/introduction_and_overview.html
+++ b/doc/html/boost_regex/introduction_and_overview.html
@@ -4,8 +4,8 @@
Introduction and Overview
-
-
+
+
diff --git a/doc/html/boost_regex/partial_matches.html b/doc/html/boost_regex/partial_matches.html
index c9e55d6b..906f0273 100644
--- a/doc/html/boost_regex/partial_matches.html
+++ b/doc/html/boost_regex/partial_matches.html
@@ -4,8 +4,8 @@
Partial Matches
-
-
+
+
diff --git a/doc/html/boost_regex/ref.html b/doc/html/boost_regex/ref.html
index f2f65319..4c3aa040 100644
--- a/doc/html/boost_regex/ref.html
+++ b/doc/html/boost_regex/ref.html
@@ -4,8 +4,8 @@
Reference
-
-
+
+
diff --git a/doc/html/boost_regex/ref/bad_expression.html b/doc/html/boost_regex/ref/bad_expression.html
index f8e92c30..68176767 100644
--- a/doc/html/boost_regex/ref/bad_expression.html
+++ b/doc/html/boost_regex/ref/bad_expression.html
@@ -4,7 +4,7 @@
bad_expression
-
+
diff --git a/doc/html/boost_regex/ref/basic_regex.html b/doc/html/boost_regex/ref/basic_regex.html
index 478dd094..263bcd7c 100644
--- a/doc/html/boost_regex/ref/basic_regex.html
+++ b/doc/html/boost_regex/ref/basic_regex.html
@@ -4,7 +4,7 @@
basic_regex
-
+
diff --git a/doc/html/boost_regex/ref/concepts.html b/doc/html/boost_regex/ref/concepts.html
index 91874b13..c7b7db34 100644
--- a/doc/html/boost_regex/ref/concepts.html
+++ b/doc/html/boost_regex/ref/concepts.html
@@ -4,7 +4,7 @@
Concepts
-
+
diff --git a/doc/html/boost_regex/ref/concepts/charT_concept.html b/doc/html/boost_regex/ref/concepts/charT_concept.html
index 576d941a..5e75799e 100644
--- a/doc/html/boost_regex/ref/concepts/charT_concept.html
+++ b/doc/html/boost_regex/ref/concepts/charT_concept.html
@@ -4,7 +4,7 @@
charT Requirements
-
+
diff --git a/doc/html/boost_regex/ref/concepts/iterator_concepts.html b/doc/html/boost_regex/ref/concepts/iterator_concepts.html
index f87698e5..22decc09 100644
--- a/doc/html/boost_regex/ref/concepts/iterator_concepts.html
+++ b/doc/html/boost_regex/ref/concepts/iterator_concepts.html
@@ -4,7 +4,7 @@
Iterator Requirements
-
+
diff --git a/doc/html/boost_regex/ref/concepts/traits_concept.html b/doc/html/boost_regex/ref/concepts/traits_concept.html
index 329afbb3..067e8876 100644
--- a/doc/html/boost_regex/ref/concepts/traits_concept.html
+++ b/doc/html/boost_regex/ref/concepts/traits_concept.html
@@ -4,7 +4,7 @@
Traits Class Requirements
-
+
diff --git a/doc/html/boost_regex/ref/deprecated_interfaces.html b/doc/html/boost_regex/ref/deprecated_interfaces.html
index 7b5a0a20..c53a9620 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces.html
@@ -4,7 +4,7 @@
Deprecated Interfaces
-
+
diff --git a/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html b/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html
index e036a7bc..0dd4fa57 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces/old_regex.html
@@ -4,7 +4,7 @@
High Level Class RegEx (Deprecated)
-
+
diff --git a/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html b/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
index 7e889255..7f42b50a 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
@@ -4,7 +4,7 @@
regex_format (Deprecated)
-
+
diff --git a/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html b/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html
index 2e87c0d5..9fb13c85 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces/regex_grep.html
@@ -4,7 +4,7 @@
regex_grep (Deprecated)
-
+
diff --git a/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html b/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html
index 0cdcaef7..ca1ee00c 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces/regex_split.html
@@ -4,7 +4,7 @@
regex_split (deprecated)
-
+
diff --git a/doc/html/boost_regex/ref/error_type.html b/doc/html/boost_regex/ref/error_type.html
index 7e8ba401..6ce3c6fa 100644
--- a/doc/html/boost_regex/ref/error_type.html
+++ b/doc/html/boost_regex/ref/error_type.html
@@ -4,7 +4,7 @@
error_type
-
+
diff --git a/doc/html/boost_regex/ref/internal_details.html b/doc/html/boost_regex/ref/internal_details.html
index 76033f98..e139afd5 100644
--- a/doc/html/boost_regex/ref/internal_details.html
+++ b/doc/html/boost_regex/ref/internal_details.html
@@ -4,7 +4,7 @@
Internal Details
-
+
diff --git a/doc/html/boost_regex/ref/internal_details/uni_iter.html b/doc/html/boost_regex/ref/internal_details/uni_iter.html
index 68f57e19..6c3bbd3e 100644
--- a/doc/html/boost_regex/ref/internal_details/uni_iter.html
+++ b/doc/html/boost_regex/ref/internal_details/uni_iter.html
@@ -4,7 +4,7 @@
Unicode Iterators
-
+
diff --git a/doc/html/boost_regex/ref/match_flag_type.html b/doc/html/boost_regex/ref/match_flag_type.html
index 103692b9..3853b4e8 100644
--- a/doc/html/boost_regex/ref/match_flag_type.html
+++ b/doc/html/boost_regex/ref/match_flag_type.html
@@ -4,7 +4,7 @@
match_flag_type
-
+
diff --git a/doc/html/boost_regex/ref/match_results.html b/doc/html/boost_regex/ref/match_results.html
index 51bb054e..a1c9892d 100644
--- a/doc/html/boost_regex/ref/match_results.html
+++ b/doc/html/boost_regex/ref/match_results.html
@@ -4,7 +4,7 @@
match_results
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings.html b/doc/html/boost_regex/ref/non_std_strings.html
index a19c0173..a745c25a 100644
--- a/doc/html/boost_regex/ref/non_std_strings.html
+++ b/doc/html/boost_regex/ref/non_std_strings.html
@@ -4,7 +4,7 @@
Interfacing With Non-Standard String Types
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/icu.html b/doc/html/boost_regex/ref/non_std_strings/icu.html
index 2bb8f1e6..4d20c767 100644
--- a/doc/html/boost_regex/ref/non_std_strings/icu.html
+++ b/doc/html/boost_regex/ref/non_std_strings/icu.html
@@ -4,7 +4,7 @@
Working With Unicode and ICU String Types
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/icu/intro.html b/doc/html/boost_regex/ref/non_std_strings/icu/intro.html
index 34eb1ec0..57752e83 100644
--- a/doc/html/boost_regex/ref/non_std_strings/icu/intro.html
+++ b/doc/html/boost_regex/ref/non_std_strings/icu/intro.html
@@ -4,7 +4,7 @@
Introduction to using Regex with ICU
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html
index a091f11f..2c25eb53 100644
--- a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html
+++ b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_algo.html
@@ -4,7 +4,7 @@
Unicode Regular Expression Algorithms
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html
index ae071c66..7eb22833 100644
--- a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html
+++ b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_iter.html
@@ -4,7 +4,7 @@
Unicode Aware Regex Iterators
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html
index e9192363..a11680a2 100644
--- a/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html
+++ b/doc/html/boost_regex/ref/non_std_strings/icu/unicode_types.html
@@ -4,7 +4,7 @@
Unicode regular expression types
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html
index a63587fe..5fe684f4 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings.html
@@ -4,7 +4,7 @@
Using Boost Regex With MFC Strings
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html
index 2c6b5ef6..1ebd610e 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_algo.html
@@ -4,7 +4,7 @@
Overloaded Algorithms For MFC String Types
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html
index 25091195..0ac01ece 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_intro.html
@@ -4,7 +4,7 @@
Introduction to Boost.Regex and MFC Strings
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html
index 05f4d904..da2ae326 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_iter.html
@@ -4,7 +4,7 @@
Iterating Over the Matches Within An MFC String
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html
index 85688c5a..379df5ac 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_create.html
@@ -4,7 +4,7 @@
Regular Expression Creation From an MFC String
-
+
diff --git a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html
index 64de2955..a33a912d 100644
--- a/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html
+++ b/doc/html/boost_regex/ref/non_std_strings/mfc_strings/mfc_regex_types.html
@@ -4,7 +4,7 @@
Regex Types Used With MFC Strings
-
+
diff --git a/doc/html/boost_regex/ref/posix.html b/doc/html/boost_regex/ref/posix.html
index f3d835e6..bc623ec1 100644
--- a/doc/html/boost_regex/ref/posix.html
+++ b/doc/html/boost_regex/ref/posix.html
@@ -4,7 +4,7 @@
POSIX Compatible C API's
-
+
diff --git a/doc/html/boost_regex/ref/regex_iterator.html b/doc/html/boost_regex/ref/regex_iterator.html
index ff2395e2..3c78910f 100644
--- a/doc/html/boost_regex/ref/regex_iterator.html
+++ b/doc/html/boost_regex/ref/regex_iterator.html
@@ -4,7 +4,7 @@
regex_iterator
-
+
diff --git a/doc/html/boost_regex/ref/regex_match.html b/doc/html/boost_regex/ref/regex_match.html
index ef438d2f..9be2b89a 100644
--- a/doc/html/boost_regex/ref/regex_match.html
+++ b/doc/html/boost_regex/ref/regex_match.html
@@ -4,7 +4,7 @@
regex_match
-
+
diff --git a/doc/html/boost_regex/ref/regex_replace.html b/doc/html/boost_regex/ref/regex_replace.html
index de6d0097..b6a8dbb8 100644
--- a/doc/html/boost_regex/ref/regex_replace.html
+++ b/doc/html/boost_regex/ref/regex_replace.html
@@ -4,7 +4,7 @@
regex_replace
-
+
diff --git a/doc/html/boost_regex/ref/regex_search.html b/doc/html/boost_regex/ref/regex_search.html
index 48da98bf..64ebc52c 100644
--- a/doc/html/boost_regex/ref/regex_search.html
+++ b/doc/html/boost_regex/ref/regex_search.html
@@ -4,7 +4,7 @@
regex_search
-
+
diff --git a/doc/html/boost_regex/ref/regex_token_iterator.html b/doc/html/boost_regex/ref/regex_token_iterator.html
index fefb1ad7..dcdaa119 100644
--- a/doc/html/boost_regex/ref/regex_token_iterator.html
+++ b/doc/html/boost_regex/ref/regex_token_iterator.html
@@ -4,7 +4,7 @@
regex_token_iterator
-
+
diff --git a/doc/html/boost_regex/ref/regex_traits.html b/doc/html/boost_regex/ref/regex_traits.html
index 772e9176..beaac1b7 100644
--- a/doc/html/boost_regex/ref/regex_traits.html
+++ b/doc/html/boost_regex/ref/regex_traits.html
@@ -4,7 +4,7 @@
regex_traits
-
+
diff --git a/doc/html/boost_regex/ref/sub_match.html b/doc/html/boost_regex/ref/sub_match.html
index b56a709f..548c67c9 100644
--- a/doc/html/boost_regex/ref/sub_match.html
+++ b/doc/html/boost_regex/ref/sub_match.html
@@ -4,7 +4,7 @@
sub_match
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type.html b/doc/html/boost_regex/ref/syntax_option_type.html
index 54badea3..984b7040 100644
--- a/doc/html/boost_regex/ref/syntax_option_type.html
+++ b/doc/html/boost_regex/ref/syntax_option_type.html
@@ -4,7 +4,7 @@
syntax_option_type
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html
index ce4afd66..ef928aa5 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_basic.html
@@ -4,7 +4,7 @@
Options for POSIX Basic Regular Expressions
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html
index 66045f49..f7432fbb 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_extended.html
@@ -4,7 +4,7 @@
Options for POSIX Extended Regular Expressions
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html
index 1dade2a7..57bd20bd 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_literal.html
@@ -4,7 +4,7 @@
Options for Literal Strings
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html
index 6635c237..ff211032 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_overview.html
@@ -4,7 +4,7 @@
Overview of syntax_option_type
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html
index b6c31652..93c196d8 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_perl.html
@@ -4,7 +4,7 @@
Options for Perl Regular Expressions
-
+
diff --git a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html
index 78122320..b21af5f9 100644
--- a/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html
+++ b/doc/html/boost_regex/ref/syntax_option_type/syntax_option_type_synopsis.html
@@ -4,7 +4,7 @@
syntax_option_type Synopsis
-
+
diff --git a/doc/html/boost_regex/syntax.html b/doc/html/boost_regex/syntax.html
index 25d7c3d1..cf557d95 100644
--- a/doc/html/boost_regex/syntax.html
+++ b/doc/html/boost_regex/syntax.html
@@ -4,8 +4,8 @@
Regular Expression Syntax
-
-
+
+
diff --git a/doc/html/boost_regex/syntax/basic_extended.html b/doc/html/boost_regex/syntax/basic_extended.html
index 9197d9f1..f0055f71 100644
--- a/doc/html/boost_regex/syntax/basic_extended.html
+++ b/doc/html/boost_regex/syntax/basic_extended.html
@@ -4,7 +4,7 @@
POSIX Extended Regular Expression Syntax
-
+
diff --git a/doc/html/boost_regex/syntax/basic_syntax.html b/doc/html/boost_regex/syntax/basic_syntax.html
index 861b05ae..abd79c7f 100644
--- a/doc/html/boost_regex/syntax/basic_syntax.html
+++ b/doc/html/boost_regex/syntax/basic_syntax.html
@@ -4,7 +4,7 @@
POSIX Basic Regular Expression Syntax
-
+
diff --git a/doc/html/boost_regex/syntax/character_classes.html b/doc/html/boost_regex/syntax/character_classes.html
index 977bd6f4..840d404a 100644
--- a/doc/html/boost_regex/syntax/character_classes.html
+++ b/doc/html/boost_regex/syntax/character_classes.html
@@ -4,7 +4,7 @@
Character Class Names
-
+
diff --git a/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html b/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html
index 531ec1f3..c058d882 100644
--- a/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html
+++ b/doc/html/boost_regex/syntax/character_classes/optional_char_class_names.html
@@ -4,7 +4,7 @@
Character classes that are supported by Unicode Regular Expressions
-
+
diff --git a/doc/html/boost_regex/syntax/character_classes/std_char_classes.html b/doc/html/boost_regex/syntax/character_classes/std_char_classes.html
index e3412b29..2303bdb4 100644
--- a/doc/html/boost_regex/syntax/character_classes/std_char_classes.html
+++ b/doc/html/boost_regex/syntax/character_classes/std_char_classes.html
@@ -4,7 +4,7 @@
Character Classes that are Always Supported
-
+
diff --git a/doc/html/boost_regex/syntax/collating_names.html b/doc/html/boost_regex/syntax/collating_names.html
index 96d6d259..e156b8a8 100644
--- a/doc/html/boost_regex/syntax/collating_names.html
+++ b/doc/html/boost_regex/syntax/collating_names.html
@@ -4,7 +4,7 @@
Collating Names
-
+
diff --git a/doc/html/boost_regex/syntax/collating_names/digraphs.html b/doc/html/boost_regex/syntax/collating_names/digraphs.html
index 611bf93e..202491bf 100644
--- a/doc/html/boost_regex/syntax/collating_names/digraphs.html
+++ b/doc/html/boost_regex/syntax/collating_names/digraphs.html
@@ -4,7 +4,7 @@
Digraphs
-
+
diff --git a/doc/html/boost_regex/syntax/collating_names/named_unicode.html b/doc/html/boost_regex/syntax/collating_names/named_unicode.html
index 8088ff7b..69f8645c 100644
--- a/doc/html/boost_regex/syntax/collating_names/named_unicode.html
+++ b/doc/html/boost_regex/syntax/collating_names/named_unicode.html
@@ -4,7 +4,7 @@
Named Unicode Characters
-
+
diff --git a/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html b/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html
index cc55942d..0cc6474b 100644
--- a/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html
+++ b/doc/html/boost_regex/syntax/collating_names/posix_symbolic_names.html
@@ -4,7 +4,7 @@
POSIX Symbolic Names
-
+
diff --git a/doc/html/boost_regex/syntax/leftmost_longest_rule.html b/doc/html/boost_regex/syntax/leftmost_longest_rule.html
index 1ae15359..3168cfe9 100644
--- a/doc/html/boost_regex/syntax/leftmost_longest_rule.html
+++ b/doc/html/boost_regex/syntax/leftmost_longest_rule.html
@@ -4,7 +4,7 @@
The Leftmost Longest Rule
-
+
diff --git a/doc/html/boost_regex/syntax/perl_syntax.html b/doc/html/boost_regex/syntax/perl_syntax.html
index 281ac7fb..64505056 100644
--- a/doc/html/boost_regex/syntax/perl_syntax.html
+++ b/doc/html/boost_regex/syntax/perl_syntax.html
@@ -4,7 +4,7 @@
Perl Regular Expression Syntax
-
+
diff --git a/doc/html/boost_regex/unicode.html b/doc/html/boost_regex/unicode.html
index 9671afdb..cb4e4b3c 100644
--- a/doc/html/boost_regex/unicode.html
+++ b/doc/html/boost_regex/unicode.html
@@ -4,8 +4,8 @@
Unicode and Boost.Regex
-
-
+
+
diff --git a/doc/html/index.html b/doc/html/index.html
index fa8905af..59296034 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -1,10 +1,10 @@
-Boost.Regex 5.1.1
+Boost.Regex 5.1.2
-
+
@@ -22,7 +22,7 @@
-Last revised: March 14, 2016 at 19:20:20 GMT |
+Last revised: June 10, 2016 at 16:58:31 GMT |
|
diff --git a/doc/regex.qbk b/doc/regex.qbk
index c8ef0088..bdf67c16 100644
--- a/doc/regex.qbk
+++ b/doc/regex.qbk
@@ -8,7 +8,7 @@
[@http://www.boost.org/LICENSE_1_0.txt])
]
[authors [Maddock, John]]
- [version 5.1.1]
+ [version 5.1.2]
[/last-revision $Date$]
]
diff --git a/include/boost/regex/concepts.hpp b/include/boost/regex/concepts.hpp
index e974d699..8cd5d995 100644
--- a/include/boost/regex/concepts.hpp
+++ b/include/boost/regex/concepts.hpp
@@ -99,27 +99,27 @@ public:
typedef allocator_architype other;
};
- pointer address(reference r);
- const_pointer address(const_reference r);
- pointer allocate(size_type);
- pointer allocate(size_type, pointer);
- void deallocate(pointer, size_type);
- size_type max_size()const;
+ pointer address(reference r){ return &r; }
+ const_pointer address(const_reference r) { return &r; }
+ pointer allocate(size_type n) { return static_cast(std::malloc(n)); }
+ pointer allocate(size_type n, pointer) { return static_cast(std::malloc(n)); }
+ void deallocate(pointer p, size_type) { std::free(p); }
+ size_type max_size()const { return UINT_MAX; }
- allocator_architype();
- allocator_architype(const allocator_architype&);
+ allocator_architype(){}
+ allocator_architype(const allocator_architype&){}
template
- allocator_architype(const allocator_architype&);
+ allocator_architype(const allocator_architype&){}
- void construct(pointer, const_reference);
- void destroy(pointer);
+ void construct(pointer p, const_reference r) { new (p)T(r); }
+ void destroy(pointer p) { p->~T(); }
};
template
-bool operator == (const allocator_architype&, const allocator_architype&);
+bool operator == (const allocator_architype&, const allocator_architype&) {return true; }
template
-bool operator != (const allocator_architype&, const allocator_architype&);
+bool operator != (const allocator_architype&, const allocator_architype&) { return false; }
namespace boost{
//
@@ -130,7 +130,7 @@ template
struct regex_traits_architype
{
public:
- regex_traits_architype();
+ regex_traits_architype(){}
typedef charT char_type;
// typedef std::size_t size_type;
typedef std::vector string_type;
@@ -168,8 +168,8 @@ public:
private:
// this type is not copyable:
- regex_traits_architype(const regex_traits_architype&);
- regex_traits_architype& operator=(const regex_traits_architype&);
+ regex_traits_architype(const regex_traits_architype&){}
+ regex_traits_architype& operator=(const regex_traits_architype&){ return *this; }
};
//
diff --git a/include/boost/regex/icu.hpp b/include/boost/regex/icu.hpp
index 719ee220..a57fe577 100644
--- a/include/boost/regex/icu.hpp
+++ b/include/boost/regex/icu.hpp
@@ -403,6 +403,22 @@ void copy_results(MR1& out, MR2 const& in)
out.set_second(in[i].second.base(), i, in[i].matched);
}
}
+#ifdef BOOST_REGEX_MATCH_EXTRA
+ // Copy full capture info as well:
+ for(int i = 0; i < (int)in.size(); ++i)
+ {
+ if(in[i].captures().size())
+ {
+ out[i].get_captures().assign(in[i].captures().size(), typename MR1::value_type());
+ for(int j = 0; j < out[i].captures().size(); ++j)
+ {
+ out[i].get_captures()[j].first = in[i].captures()[j].first.base();
+ out[i].get_captures()[j].second = in[i].captures()[j].second.base();
+ out[i].get_captures()[j].matched = in[i].captures()[j].matched;
+ }
+ }
+ }
+#endif
}
template
diff --git a/include/boost/regex/v4/basic_regex_parser.hpp b/include/boost/regex/v4/basic_regex_parser.hpp
index aefabacb..0071a8ce 100644
--- a/include/boost/regex/v4/basic_regex_parser.hpp
+++ b/include/boost/regex/v4/basic_regex_parser.hpp
@@ -543,7 +543,11 @@ bool basic_regex_parser::parse_open_paren()
template
bool basic_regex_parser::parse_basic_escape()
{
- ++m_position;
+ if(++m_position == m_end)
+ {
+ fail(regex_constants::error_paren, m_position - m_base);
+ return false;
+ }
bool result = true;
switch(this->m_traits.escape_syntax_type(*m_position))
{
diff --git a/test/Jamfile.v2 b/test/Jamfile.v2
index 6617d188..afde5fe7 100644
--- a/test/Jamfile.v2
+++ b/test/Jamfile.v2
@@ -158,7 +158,7 @@ test-suite regex
[ run
# sources
captures/captures_test.cpp
- captures//boost_regex_extra
+ captures//boost_regex_extra ../build//icu_options
: # additional args
: # test-files
: # requirements
diff --git a/test/captures/captures_test.cpp b/test/captures/captures_test.cpp
index e0e3257c..63f58c9c 100644
--- a/test/captures/captures_test.cpp
+++ b/test/captures/captures_test.cpp
@@ -20,9 +20,28 @@
#include
#include "../test_macros.hpp"
#include
+#include
+
+#ifdef BOOST_HAS_ICU
+#include
+#endif
#define ARRAY_SIZE(x) (sizeof(x) / sizeof(x[0]))
+template
+int array_size(const char* (&p)[N])
+{
+ for(int i = 0; i < N; ++i)
+ if(p[i] == 0)
+ return i;
+ return N;
+}
+
+std::wstring make_wstring(const char* p)
+{
+ return std::wstring(p, p + std::strlen(p));
+}
+
#ifdef __sgi
template
void test_captures(const std::string& regx, const std::string& text, const T& expected)
@@ -42,13 +61,55 @@ void test_captures(const std::string& regx, const std::string& text, T& expected
#endif
for(i = 0; i < what.size(); ++i)
{
- BOOST_CHECK(what.captures(i).size() <= ARRAY_SIZE(expected[i]));
+ BOOST_CHECK(what.captures(i).size() == array_size(expected[i]));
for(j = 0; j < what.captures(i).size(); ++j)
{
BOOST_CHECK(what.captures(i)[j] == expected[i][j]);
}
}
}
+
+ std::wstring wre(regx.begin(), regx.end());
+ std::wstring wtext(text.begin(), text.end());
+ boost::wregex we(wre);
+ boost::wsmatch wwhat;
+ if(boost::regex_match(wtext, wwhat, we, boost::match_extra))
+ {
+ unsigned i, j;
+#ifndef __sgi
+ // strange type deduction causes this test to fail on SGI:
+ BOOST_CHECK(wwhat.size() == ARRAY_SIZE(expected));
+#endif
+ for(i = 0; i < wwhat.size(); ++i)
+ {
+ BOOST_CHECK(wwhat.captures(i).size() == array_size(expected[i]));
+ for(j = 0; j < wwhat.captures(i).size(); ++j)
+ {
+ BOOST_CHECK(wwhat.captures(i)[j] == make_wstring(expected[i][j]));
+ }
+ }
+ }
+
+#ifdef BOOST_HAS_ICU
+ boost::u32regex ure = boost::make_u32regex(regx);
+ what = boost::smatch();
+ if(boost::u32regex_match(text, what, ure, boost::match_extra))
+ {
+ unsigned i, j;
+#ifndef __sgi
+ // strange type deduction causes this test to fail on SGI:
+ BOOST_CHECK(what.size() == ARRAY_SIZE(expected));
+#endif
+ for(i = 0; i < what.size(); ++i)
+ {
+ BOOST_CHECK(what.captures(i).size() == array_size(expected[i]));
+ for(j = 0; j < what.captures(i).size(); ++j)
+ {
+ BOOST_CHECK(what.captures(i)[j] == expected[i][j]);
+ }
+ }
+ }
+#endif
}
int cpp_main(int , char* [])
diff --git a/test/regress/basic_tests.cpp b/test/regress/basic_tests.cpp
index a1251f9b..25f00c24 100644
--- a/test/regress/basic_tests.cpp
+++ b/test/regress/basic_tests.cpp
@@ -61,6 +61,7 @@ void basic_tests()
TEST_REGEX_SEARCH("\\(\\)", basic, "", match_default, make_array(0, 0, 0, 0, -2, -2));
TEST_INVALID_REGEX("\\(", basic);
TEST_INVALID_REGEX("\\)", basic);
+ TEST_INVALID_REGEX("\\", basic);
TEST_INVALID_REGEX("\\(aa", basic);
TEST_INVALID_REGEX("aa\\)", basic);
TEST_REGEX_SEARCH("()", basic, "()", match_default, make_array(0, 2, -2, -2));