From f4d925ad3b3f24b575a62e2d5f4b95e733c8c293 Mon Sep 17 00:00:00 2001
From: John Maddock
Date: Fri, 3 Sep 2010 08:33:13 +0000
Subject: [PATCH] Up the warning level, and fix the resulting warnings with
msvc, gcc and Intel. Fix bug in docs and regenerate.
[SVN r65208]
---
build/Jamfile.v2 | 33 ++++++-
doc/basic_regex.qbk | 4 +-
.../background_information/examples.html | 6 +-
.../background_information/history.html | 18 ++--
.../background_information/locale.html | 8 +-
.../background_information/standards.html | 10 +-
doc/html/boost_regex/captures.html | 6 +-
.../format/boost_format_syntax.html | 8 +-
doc/html/boost_regex/install.html | 16 ++--
doc/html/boost_regex/ref/bad_expression.html | 4 +-
doc/html/boost_regex/ref/basic_regex.html | 22 ++---
.../ref/concepts/traits_concept.html | 4 +-
.../deprecated_interfaces/regex_format.html | 2 +-
doc/html/boost_regex/ref/error_type.html | 4 +-
doc/html/boost_regex/ref/match_flag_type.html | 2 +-
doc/html/boost_regex/ref/match_results.html | 4 +-
.../ref/non_std_strings/icu/unicode_algo.html | 6 +-
.../ref/non_std_strings/icu/unicode_iter.html | 4 +-
.../non_std_strings/mfc_strings/mfc_algo.html | 10 +-
.../non_std_strings/mfc_strings/mfc_iter.html | 4 +-
doc/html/boost_regex/ref/posix.html | 8 +-
doc/html/boost_regex/ref/regex_iterator.html | 4 +-
doc/html/boost_regex/ref/regex_match.html | 4 +-
doc/html/boost_regex/ref/regex_replace.html | 4 +-
doc/html/boost_regex/ref/regex_search.html | 4 +-
.../boost_regex/ref/regex_token_iterator.html | 4 +-
doc/html/boost_regex/ref/regex_traits.html | 2 +-
doc/html/boost_regex/ref/sub_match.html | 8 +-
.../boost_regex/syntax/basic_extended.html | 66 ++++++-------
doc/html/boost_regex/syntax/basic_syntax.html | 44 ++++-----
doc/html/boost_regex/syntax/perl_syntax.html | 96 +++++++++----------
doc/html/boost_regex/unicode.html | 4 +-
doc/html/index.html | 4 +-
example/snippets/partial_regex_grep.cpp | 4 +-
example/snippets/partial_regex_iterate.cpp | 4 +-
include/boost/regex/concepts.hpp | 2 +-
include/boost/regex/pending/object_cache.hpp | 16 ++--
include/boost/regex/v4/basic_regex.hpp | 2 +-
.../boost/regex/v4/perl_matcher_recursive.hpp | 8 +-
include/boost/regex/v4/regex_format.hpp | 8 ++
src/cregex.cpp | 3 +
src/icu.cpp | 4 +
src/regex.cpp | 3 +
src/wide_posix_api.cpp | 4 +
test/Jamfile.v2 | 4 +-
test/collate_info/collate_info.cpp | 4 +
test/concepts/concept_check.cpp | 4 +
.../named_subexpressions_test.cpp | 3 +
test/pathology/bad_expression_test.cpp | 4 +
test/pathology/recursion_test.cpp | 4 +
test/regress/test.hpp | 8 ++
test/regress/test_icu.cpp | 24 ++---
test/regress/test_simple_repeats.cpp | 4 +
53 files changed, 314 insertions(+), 230 deletions(-)
diff --git a/build/Jamfile.v2 b/build/Jamfile.v2
index 25266119..c3493ead 100644
--- a/build/Jamfile.v2
+++ b/build/Jamfile.v2
@@ -3,6 +3,11 @@
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt.
+project : requirements
+ # default to all warnings on:
+ all
+ ;
+
#
# ICU configuration:
#
@@ -32,7 +37,32 @@ else
lib icuin : : msvc release icuin $(ICU_PATH)/lib shared shared ;
lib icuin : : this_is_an_invalid_library_name ;
- ICU_OPTS = $(ICU_PATH)/include icuuc/ shared/shared icudt/ shared/shared icuin/ shared/shared $(ICU_PATH)/bin BOOST_HAS_ICU=1 shared ;
+ if $(ICU_PATH)
+ {
+ icuucd_name = [ GLOB $(ICU_PATH)/bin : icuuc??d.dll ] ;
+ icuuc_name = [ GLOB $(ICU_PATH)/bin : icuuc??.dll ] ;
+ icudt_name = [ GLOB $(ICU_PATH)/bin : icudt??.dll ] ;
+ icuin_name = [ GLOB $(ICU_PATH)/bin : icuin??.dll ] ;
+ icuind_name = [ GLOB $(ICU_PATH)/bin : 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
+ $(ICU_PATH)/bin
+ BOOST_HAS_ICU=1
+ shared
+ 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
+ ;
}
exe has_icu : ./has_icu_test.cpp : $(ICU_OPTS) ;
@@ -70,3 +100,4 @@ lib boost_regex : ../src/$(SOURCES) icu_options
boost-install boost_regex ;
+
diff --git a/doc/basic_regex.qbk b/doc/basic_regex.qbk
index 449cd4a7..73816a1d 100644
--- a/doc/basic_regex.qbk
+++ b/doc/basic_regex.qbk
@@ -145,7 +145,7 @@ The definition of `basic_regex` follows: it is based very closely on class
``[link boost_regex.basic_regex.size size_type size]``() const;
``[link boost_regex.basic_regex.max_size size_type max_size]``() const;
``[link boost_regex.basic_regex.empty bool empty]``() const;
- ``[link boost_regex.basic_regex.mark_count unsigned mark_count]``()const;
+ ``[link boost_regex.basic_regex.mark_count size_type mark_count]``()const;
//
// modifiers:
``[link boost_regex.basic_regex.assign1 basic_regex& assign]``(const basic_regex& that);
@@ -485,7 +485,7 @@ otherwise false.
[#boost_regex.basic_regex.mark_count]
- unsigned mark_count() const;
+ size_type mark_count() const;
[*Effects]: Returns the number of marked sub-expressions within the regular expresion.
diff --git a/doc/html/boost_regex/background_information/examples.html b/doc/html/boost_regex/background_information/examples.html
index 2e7cde55..6d49c4da 100644
--- a/doc/html/boost_regex/background_information/examples.html
+++ b/doc/html/boost_regex/background_information/examples.html
@@ -28,7 +28,7 @@
Example Programs
@@ -151,7 +151,7 @@
Files: captures_test.cpp .
@@ -177,7 +177,7 @@
Files: regex_timer.cpp .
diff --git a/doc/html/boost_regex/background_information/history.html b/doc/html/boost_regex/background_information/history.html
index ef6f560f..ab804422 100644
--- a/doc/html/boost_regex/background_information/history.html
+++ b/doc/html/boost_regex/background_information/history.html
@@ -36,7 +36,7 @@
All issues including closed ones can be viewed here .
@@ -55,7 +55,7 @@
#3890
@@ -84,7 +84,7 @@
@@ -93,7 +93,7 @@
branch resets and recursive regular expressions.
@@ -121,7 +121,7 @@
@@ -144,7 +144,7 @@
@@ -214,7 +214,7 @@
@@ -269,7 +269,7 @@
@@ -277,7 +277,7 @@
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 a16dc05d..6bc23cc8 100644
--- a/doc/html/boost_regex/background_information/locale.html
+++ b/doc/html/boost_regex/background_information/locale.html
@@ -58,7 +58,7 @@
There are three separate localization mechanisms supported by Boost.Regex:
@@ -90,7 +90,7 @@
are treated as "unknown" graphic characters.
@@ -114,7 +114,7 @@
libraries including version 1 of this library.
@@ -151,7 +151,7 @@
in your code. The best way to ensure this is to add the #define to < boost / regex / user . hpp >
.
diff --git a/doc/html/boost_regex/background_information/standards.html b/doc/html/boost_regex/background_information/standards.html
index eebfb4fb..8c5117bc 100644
--- a/doc/html/boost_regex/background_information/standards.html
+++ b/doc/html/boost_regex/background_information/standards.html
@@ -28,7 +28,7 @@
Conformance
@@ -36,7 +36,7 @@
Report on C++ Library Extensions.
@@ -49,7 +49,7 @@
rather than a Unicode escape sequence; use \x{DDDD} for Unicode escape sequences.
@@ -73,7 +73,7 @@
the Unicode requirements below.
@@ -93,7 +93,7 @@
a custom traits class.
diff --git a/doc/html/boost_regex/captures.html b/doc/html/boost_regex/captures.html
index 976e9a53..6a06c9cf 100644
--- a/doc/html/boost_regex/captures.html
+++ b/doc/html/boost_regex/captures.html
@@ -35,7 +35,7 @@
accessed.
@@ -218,7 +218,7 @@
output stream.
@@ -231,7 +231,7 @@
you can determine which sub-expressions matched by accessing the sub_match :: matched
data member.
diff --git a/doc/html/boost_regex/format/boost_format_syntax.html b/doc/html/boost_regex/format/boost_format_syntax.html
index 64065262..fbea7ac1 100644
--- a/doc/html/boost_regex/format/boost_format_syntax.html
+++ b/doc/html/boost_regex/format/boost_format_syntax.html
@@ -32,7 +32,7 @@
'$', '\', '(', ')', '?', and ':'.
@@ -40,7 +40,7 @@
you want a to output literal parenthesis.
@@ -79,7 +79,7 @@
?{NAME}true-expression:false-expression
@@ -319,7 +319,7 @@
as a literal.
diff --git a/doc/html/boost_regex/install.html b/doc/html/boost_regex/install.html
index d401744e..df3dcc77 100644
--- a/doc/html/boost_regex/install.html
+++ b/doc/html/boost_regex/install.html
@@ -49,7 +49,7 @@
file before you can use it, instructions for specific platforms are as follows:
@@ -58,7 +58,7 @@
started guide for more information.
@@ -96,11 +96,11 @@
ICU you are using is binary compatible with the toolset you use to build Boost.
@@ -165,7 +165,7 @@
a lot in compile times!
@@ -253,7 +253,7 @@
@@ -302,7 +302,7 @@
see the config library documentation .
@@ -347,7 +347,7 @@
will build v9 variants of the regex library named libboost_regex_v9.a etc.
diff --git a/doc/html/boost_regex/ref/bad_expression.html b/doc/html/boost_regex/ref/bad_expression.html
index 7b328aa4..568376a7 100644
--- a/doc/html/boost_regex/ref/bad_expression.html
+++ b/doc/html/boost_regex/ref/bad_expression.html
@@ -27,7 +27,7 @@
bad_expression
#include < boost / pattern_except . hpp >
@@ -54,7 +54,7 @@
}
regex_error ( const std :: string & s , regex_constants :: error_type err , std :: ptrdiff_t pos );
diff --git a/doc/html/boost_regex/ref/basic_regex.html b/doc/html/boost_regex/ref/basic_regex.html
index 184bd557..bdf68aa4 100644
--- a/doc/html/boost_regex/ref/basic_regex.html
+++ b/doc/html/boost_regex/ref/basic_regex.html
@@ -27,7 +27,7 @@
basic_regex
#include < boost / regex . hpp >
@@ -177,7 +177,7 @@
size_type size () const ;
size_type max_size () const ;
bool empty () const ;
- unsigned mark_count () const ;
+ size_type mark_count () const ;
basic_regex& assign ( const basic_regex & that );
@@ -244,7 +244,7 @@
}
@@ -327,7 +327,7 @@
basic_regex
.
-
Table 1. basic_regex default construction postconditions
+
Table 1. basic_regex default construction postconditions
@@ -407,7 +407,7 @@
flags specified in f .
-
Table 2. Postconditions for basic_regex construction
+
Table 2. Postconditions for basic_regex construction
@@ -512,7 +512,7 @@
specified in f .
-
Table 3. Postconditions for basic_regex construction
+
Table 3. Postconditions for basic_regex construction
@@ -616,7 +616,7 @@
according the option flags specified in f .
-
Table 4. Postconditions for basic_regex construction
+
Table 4. Postconditions for basic_regex construction
@@ -728,7 +728,7 @@
flags specified in f .
-
Table 5. Postconditions for basic_regex construction
+
Table 5. Postconditions for basic_regex construction
@@ -830,7 +830,7 @@
flags specified in f .
-
Table 6. Postconditions for basic_regex construction
+
Table 6. Postconditions for basic_regex construction
@@ -996,7 +996,7 @@
-unsigned mark_count () const ;
+size_type mark_count () const ;
Effects : Returns the number of marked sub-expressions
@@ -1044,7 +1044,7 @@
in f .
-
Table 7. Postconditions for basic_regex::assign
+
Table 7. Postconditions for basic_regex::assign
diff --git a/doc/html/boost_regex/ref/concepts/traits_concept.html b/doc/html/boost_regex/ref/concepts/traits_concept.html
index be1e107a..273062c2 100644
--- a/doc/html/boost_regex/ref/concepts/traits_concept.html
+++ b/doc/html/boost_regex/ref/concepts/traits_concept.html
@@ -34,7 +34,7 @@
Boost-specific enhanced interface.
@@ -382,7 +382,7 @@
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 06c7dab9..56045316 100644
--- a/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
+++ b/doc/html/boost_regex/ref/deprecated_interfaces/regex_format.html
@@ -34,7 +34,7 @@
previous version of Boost.Regex and will not be further updated:
diff --git a/doc/html/boost_regex/ref/error_type.html b/doc/html/boost_regex/ref/error_type.html
index 3580227f..f8fd3399 100644
--- a/doc/html/boost_regex/ref/error_type.html
+++ b/doc/html/boost_regex/ref/error_type.html
@@ -27,7 +27,7 @@
error_type
@@ -57,7 +57,7 @@
}
diff --git a/doc/html/boost_regex/ref/match_flag_type.html b/doc/html/boost_regex/ref/match_flag_type.html
index bfd64b94..fb053022 100644
--- a/doc/html/boost_regex/ref/match_flag_type.html
+++ b/doc/html/boost_regex/ref/match_flag_type.html
@@ -69,7 +69,7 @@
}
diff --git a/doc/html/boost_regex/ref/match_results.html b/doc/html/boost_regex/ref/match_results.html
index 352b7a08..4a4dfa75 100644
--- a/doc/html/boost_regex/ref/match_results.html
+++ b/doc/html/boost_regex/ref/match_results.html
@@ -27,7 +27,7 @@
match_results
#include < boost / regex . hpp >
@@ -167,7 +167,7 @@
match_results < BidirectionalIterator , Allocator >& m2 );
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 f9200004..42b27579 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
@@ -43,7 +43,7 @@
on to the "real" algorithm.
@@ -89,7 +89,7 @@
}
@@ -128,7 +128,7 @@
}
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 2ae467a1..9208b690 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
@@ -28,7 +28,7 @@
Unicode Aware Regex Iterators
@@ -126,7 +126,7 @@
Provided of course that the input is encoded as UTF-8.
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 252ef1b2..800f6dc6 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
@@ -34,7 +34,7 @@
here they are anyway:
@@ -82,7 +82,7 @@
}
@@ -110,7 +110,7 @@
}
@@ -149,7 +149,7 @@
}
@@ -164,7 +164,7 @@
+ s . GetLength (), e , f );
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 409d94f0..eb3d1457 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
@@ -32,7 +32,7 @@
an MFC/ATL string to a regex_iterator
or regex_token_iterator
:
@@ -68,7 +68,7 @@
}
diff --git a/doc/html/boost_regex/ref/posix.html b/doc/html/boost_regex/ref/posix.html
index f19ce29c..02af5666 100644
--- a/doc/html/boost_regex/ref/posix.html
+++ b/doc/html/boost_regex/ref/posix.html
@@ -165,7 +165,7 @@
@@ -379,7 +379,7 @@
@@ -467,7 +467,7 @@
@@ -537,7 +537,7 @@
diff --git a/doc/html/boost_regex/ref/regex_iterator.html b/doc/html/boost_regex/ref/regex_iterator.html
index b24a9391..dacb6e31 100644
--- a/doc/html/boost_regex/ref/regex_iterator.html
+++ b/doc/html/boost_regex/ref/regex_iterator.html
@@ -78,7 +78,7 @@
regex_constants :: match_flag_type m = regex_constants :: match_default );
@@ -437,7 +437,7 @@
m .
diff --git a/doc/html/boost_regex/ref/regex_match.html b/doc/html/boost_regex/ref/regex_match.html
index d887361c..4d00a312 100644
--- a/doc/html/boost_regex/ref/regex_match.html
+++ b/doc/html/boost_regex/ref/regex_match.html
@@ -80,7 +80,7 @@
match_flag_type flags = match_default );
template < class BidirectionalIterator , class Allocator , class charT , class traits >
@@ -361,7 +361,7 @@
Effects : Returns the result of regex_match ( s . begin (), s . end (), e , flags )
.
diff --git a/doc/html/boost_regex/ref/regex_replace.html b/doc/html/boost_regex/ref/regex_replace.html
index b520b401..4002ff79 100644
--- a/doc/html/boost_regex/ref/regex_replace.html
+++ b/doc/html/boost_regex/ref/regex_replace.html
@@ -53,7 +53,7 @@
match_flag_type flags = match_default );
template < class OutputIterator , class BidirectionalIterator , class traits , class Formatter >
@@ -199,7 +199,7 @@
and then returns result
.
diff --git a/doc/html/boost_regex/ref/regex_search.html b/doc/html/boost_regex/ref/regex_search.html
index 476548df..325ee96d 100644
--- a/doc/html/boost_regex/ref/regex_search.html
+++ b/doc/html/boost_regex/ref/regex_search.html
@@ -73,7 +73,7 @@
match_flag_type flags = match_default );
template < class BidirectionalIterator , class Allocator , class charT , class traits >
@@ -357,7 +357,7 @@
Effects : Returns the result of regex_search ( s . begin (), s . end (), e , flags )
.
diff --git a/doc/html/boost_regex/ref/regex_token_iterator.html b/doc/html/boost_regex/ref/regex_token_iterator.html
index 531470f9..05a750a4 100644
--- a/doc/html/boost_regex/ref/regex_token_iterator.html
+++ b/doc/html/boost_regex/ref/regex_token_iterator.html
@@ -136,7 +136,7 @@
regex_constants :: match_flag_type m = regex_constants :: match_default );
@@ -383,7 +383,7 @@
m .
diff --git a/doc/html/boost_regex/ref/regex_traits.html b/doc/html/boost_regex/ref/regex_traits.html
index 43943935..57895470 100644
--- a/doc/html/boost_regex/ref/regex_traits.html
+++ b/doc/html/boost_regex/ref/regex_traits.html
@@ -46,7 +46,7 @@
}
diff --git a/doc/html/boost_regex/ref/sub_match.html b/doc/html/boost_regex/ref/sub_match.html
index f5b56b9c..806669df 100644
--- a/doc/html/boost_regex/ref/sub_match.html
+++ b/doc/html/boost_regex/ref/sub_match.html
@@ -329,11 +329,11 @@
}
@@ -474,7 +474,7 @@
@@ -1009,7 +1009,7 @@
+ m2 . str () .
diff --git a/doc/html/boost_regex/syntax/basic_extended.html b/doc/html/boost_regex/syntax/basic_extended.html
index 20e4c05a..b8388c89 100644
--- a/doc/html/boost_regex/syntax/basic_extended.html
+++ b/doc/html/boost_regex/syntax/basic_extended.html
@@ -28,7 +28,7 @@
Expression Syntax
@@ -46,7 +46,7 @@
@@ -56,7 +56,7 @@
.[{()\*+?|^$
@@ -74,7 +74,7 @@
@@ -86,7 +86,7 @@
of an expression, or the last character of a sub-expression.
@@ -98,7 +98,7 @@
to by a back-reference.
@@ -184,7 +184,7 @@ cab
operator to be applied to.
@@ -214,7 +214,7 @@ cab
@@ -227,7 +227,7 @@ cab
will match either of "abd" or "abef".
@@ -240,7 +240,7 @@ cab
A bracket expression may contain any combination of the following:
@@ -249,7 +249,7 @@ cab
or 'c'.
@@ -265,7 +265,7 @@ cab
the code points of the characters only.
@@ -274,7 +274,7 @@ cab
range a - c
.
@@ -284,7 +284,7 @@ cab
character class names .
@@ -312,7 +312,7 @@ cab
matches a NUL character.
@@ -329,7 +329,7 @@ cab
or even all locales on one platform.
@@ -337,7 +337,7 @@ cab
[[: digit :] a - c [. NUL .]]
.
@@ -363,7 +363,7 @@ cab
extensions are also supported by Boost.Regex:
@@ -552,7 +552,7 @@ cab
@@ -706,7 +706,7 @@ cab
@@ -813,7 +813,7 @@ cab
matches any "digit" character, as does
\ p { digit }
.
@@ -888,7 +888,7 @@ cab
@@ -979,7 +979,7 @@ cab
@@ -991,7 +991,7 @@ cab
match to start where the last one ended.
@@ -1005,7 +1005,7 @@ cab
\*+ aaa
@@ -1056,7 +1056,7 @@ cab
@@ -1065,7 +1065,7 @@ cab
\@ matches a literal '@'.
@@ -1102,7 +1102,7 @@ cab
@@ -1112,11 +1112,11 @@ cab
rule.
@@ -1137,7 +1137,7 @@ cab
used with the -E option.
@@ -1151,7 +1151,7 @@ cab
these by default anyway.
@@ -1164,7 +1164,7 @@ cab
modify how the case and locale sensitivity are to be applied.
diff --git a/doc/html/boost_regex/syntax/basic_syntax.html b/doc/html/boost_regex/syntax/basic_syntax.html
index 54a8198d..fc374609 100644
--- a/doc/html/boost_regex/syntax/basic_syntax.html
+++ b/doc/html/boost_regex/syntax/basic_syntax.html
@@ -28,7 +28,7 @@
Expression Syntax
@@ -45,7 +45,7 @@
@@ -55,7 +55,7 @@
.[\*^$
@@ -73,7 +73,7 @@
@@ -85,7 +85,7 @@
of an expression, or the last character of a sub-expression.
@@ -97,7 +97,7 @@
by a back-reference.
@@ -155,7 +155,7 @@ aaaa
to.
@@ -173,7 +173,7 @@ aaaa
aaabba
@@ -186,7 +186,7 @@ aaaa
A bracket expression may contain any combination of the following:
@@ -195,7 +195,7 @@ aaaa
or 'c'.
@@ -211,7 +211,7 @@ aaaa
of the characters only.
@@ -220,7 +220,7 @@ aaaa
range a-c.
@@ -230,7 +230,7 @@ aaaa
character class names .
@@ -259,7 +259,7 @@ aaaa
element names.
@@ -276,7 +276,7 @@ aaaa
or even all locales on one platform.
@@ -284,7 +284,7 @@ aaaa
[[: digit :] a - c [. NUL .]].
@@ -299,7 +299,7 @@ aaaa
will match either a literal '\' or a '^'.
@@ -309,13 +309,13 @@ aaaa
rule.
@@ -333,7 +333,7 @@ aaaa
As its name suggests, this behavior is consistent with the Unix utility grep.
@@ -613,7 +613,7 @@ aaaa
leftmost-longest rule.
@@ -627,7 +627,7 @@ aaaa
options modify how the case and locale sensitivity are to be applied.
diff --git a/doc/html/boost_regex/syntax/perl_syntax.html b/doc/html/boost_regex/syntax/perl_syntax.html
index 6d47d4a0..ae4171d3 100644
--- a/doc/html/boost_regex/syntax/perl_syntax.html
+++ b/doc/html/boost_regex/syntax/perl_syntax.html
@@ -28,7 +28,7 @@
Syntax
@@ -43,7 +43,7 @@
boost :: regex e2 ( my_expression , boost :: regex :: perl | boost :: regex :: icase );
@@ -53,7 +53,7 @@
.[{()\*+?|^$
@@ -73,7 +73,7 @@
@@ -83,7 +83,7 @@
A '$' character shall match the end of a line.
@@ -94,7 +94,7 @@
can also repeated, or referred to by a back-reference.
@@ -107,7 +107,7 @@
without splitting out any separate sub-expressions.
@@ -188,7 +188,7 @@
to be applied to.
@@ -218,7 +218,7 @@
while consuming as little input as possible.
@@ -250,7 +250,7 @@
while giving nothing back.
@@ -360,7 +360,7 @@
named "two".
@@ -387,7 +387,7 @@
(?:abc)??
has exactly the same effect.
@@ -399,7 +399,7 @@
A bracket expression may contain any combination of the following:
@@ -407,7 +407,7 @@
'b', or 'c'.
@@ -421,7 +421,7 @@
sensitive.
@@ -430,7 +430,7 @@
matches any character that is not in the range a-c
.
@@ -441,7 +441,7 @@
class names.
@@ -463,7 +463,7 @@
matches a \0
character.
@@ -480,7 +480,7 @@
or even all locales on one platform.
@@ -492,7 +492,7 @@
is not a "word" character.
@@ -500,7 +500,7 @@
[[:digit:]a-c[.NUL.]]
.
@@ -692,7 +692,7 @@
@@ -894,7 +894,7 @@
@@ -1002,7 +1002,7 @@
as does \p{digit}
.
@@ -1021,7 +1021,7 @@
\B
Matches only when not at a word boundary.
@@ -1048,7 +1048,7 @@
(?=\n?\z)
.
@@ -1060,7 +1060,7 @@
one ended.
@@ -1073,7 +1073,7 @@
\*+ aaa
@@ -1083,7 +1083,7 @@
followed by a sequence of zero or more combining characters.
@@ -1092,7 +1092,7 @@
sequence, specifically it is identical to the expression (?>\x0D\x0A?|[\x0A-\x0C\x85\x{2028}\x{2029}])
.
@@ -1107,7 +1107,7 @@
This can be used to simulate variable width lookbehind assertions.
@@ -1116,7 +1116,7 @@
\@ matches a literal '@'.
@@ -1125,7 +1125,7 @@
(?
.
@@ -1147,14 +1147,14 @@
format string for search and replace operations, or in the match_results
member functions.
(?# ... )
is treated as a comment, it's contents are ignored.
@@ -1168,7 +1168,7 @@
pattern only.
@@ -1177,7 +1177,7 @@
an additional sub-expression.
@@ -1199,7 +1199,7 @@
# 1 2 2 3 2 3 4
@@ -1222,7 +1222,7 @@
could be used to validate the password.
@@ -1236,7 +1236,7 @@
(pattern must be of fixed length).
@@ -1249,7 +1249,7 @@
no match is found at all.
@@ -1273,7 +1273,7 @@
to the next sub-expression to be declared.
@@ -1323,7 +1323,7 @@
@@ -1358,7 +1358,7 @@
@@ -1534,7 +1534,7 @@
@@ -1543,7 +1543,7 @@
and JScript
are all synonyms for perl
.
@@ -1555,7 +1555,7 @@
are to be applied.
@@ -1567,7 +1567,7 @@
and no_mod_s
.
diff --git a/doc/html/boost_regex/unicode.html b/doc/html/boost_regex/unicode.html
index ca7ef61e..78347b61 100644
--- a/doc/html/boost_regex/unicode.html
+++ b/doc/html/boost_regex/unicode.html
@@ -30,7 +30,7 @@
There are two ways to use Boost.Regex with Unicode strings:
@@ -56,7 +56,7 @@
diff --git a/doc/html/index.html b/doc/html/index.html
index 03f1f948..074d08a8 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -28,7 +28,7 @@
Copyright © 1998 -2007 John Maddock
-Last revised: July 21, 2010 at 10:18:17 GMT
+Last revised: September 02, 2010 at 17:43:51 GMT
diff --git a/example/snippets/partial_regex_grep.cpp b/example/snippets/partial_regex_grep.cpp
index ed8a5923..5d1fca07 100644
--- a/example/snippets/partial_regex_grep.cpp
+++ b/example/snippets/partial_regex_grep.cpp
@@ -54,9 +54,9 @@ void search(std::istream& is)
while(have_more)
{
// how much do we copy forward from last try:
- unsigned leftover = (buf + sizeof(buf)) - next_pos;
+ std::ptrdiff_t leftover = (buf + sizeof(buf)) - next_pos;
// and how much is left to fill:
- unsigned size = next_pos - buf;
+ std::ptrdiff_t size = next_pos - buf;
// copy forward whatever we have left:
std::memmove(buf, next_pos, leftover);
// fill the rest from the stream:
diff --git a/example/snippets/partial_regex_iterate.cpp b/example/snippets/partial_regex_iterate.cpp
index aee78ab6..065438ab 100644
--- a/example/snippets/partial_regex_iterate.cpp
+++ b/example/snippets/partial_regex_iterate.cpp
@@ -44,9 +44,9 @@ void search(std::istream& is)
while(have_more)
{
// how much do we copy forward from last try:
- unsigned leftover = (buf + sizeof(buf)) - next_pos;
+ std::ptrdiff_t leftover = (buf + sizeof(buf)) - next_pos;
// and how much is left to fill:
- unsigned size = next_pos - buf;
+ std::ptrdiff_t size = next_pos - buf;
// copy forward whatever we have left:
std::memmove(buf, next_pos, leftover);
// fill the rest from the stream:
diff --git a/include/boost/regex/concepts.hpp b/include/boost/regex/concepts.hpp
index 6ef88642..f3ca53d4 100644
--- a/include/boost/regex/concepts.hpp
+++ b/include/boost/regex/concepts.hpp
@@ -412,7 +412,7 @@ struct BaseRegexConcept
// access:
const Regex ce;
- unsigned i = ce.mark_count();
+ typename Regex::size_type i = ce.mark_count();
ignore_unused_variable_warning(i);
m_flags = ce.flags();
e.imbue(ce.getloc());
diff --git a/include/boost/regex/pending/object_cache.hpp b/include/boost/regex/pending/object_cache.hpp
index e1aa191d..db60e28a 100644
--- a/include/boost/regex/pending/object_cache.hpp
+++ b/include/boost/regex/pending/object_cache.hpp
@@ -41,10 +41,10 @@ public:
typedef std::map
map_type;
typedef typename map_type::iterator map_iterator;
typedef typename list_type::size_type size_type;
- static boost::shared_ptr get(const Key& k, size_type max_cache_size);
+ static boost::shared_ptr get(const Key& k, size_type l_max_cache_size);
private:
- static boost::shared_ptr do_get(const Key& k, size_type max_cache_size);
+ static boost::shared_ptr do_get(const Key& k, size_type l_max_cache_size);
struct data
{
@@ -58,7 +58,7 @@ private:
};
template
-boost::shared_ptr object_cache::get(const Key& k, size_type max_cache_size)
+boost::shared_ptr object_cache::get(const Key& k, size_type l_max_cache_size)
{
#ifdef BOOST_HAS_THREADS
static boost::static_mutex mut = BOOST_STATIC_MUTEX_INIT;
@@ -66,7 +66,7 @@ boost::shared_ptr object_cache::get(const Key& k, siz
boost::static_mutex::scoped_lock l(mut);
if(l)
{
- return do_get(k, max_cache_size);
+ return do_get(k, l_max_cache_size);
}
//
// what do we do if the lock fails?
@@ -77,12 +77,12 @@ boost::shared_ptr object_cache::get(const Key& k, siz
return boost::shared_ptr();
#endif
#else
- return do_get(k, max_cache_size);
+ return do_get(k, l_max_cache_size);
#endif
}
template
-boost::shared_ptr object_cache::do_get(const Key& k, size_type max_cache_size)
+boost::shared_ptr object_cache::do_get(const Key& k, size_type l_max_cache_size)
{
typedef typename object_cache::data object_data;
typedef typename map_type::size_type map_size_type;
@@ -128,7 +128,7 @@ boost::shared_ptr object_cache::do_get(const Key& k,
BOOST_ASSERT(s_data.index[k]->first.get() == result.get());
BOOST_ASSERT(&(s_data.index.find(k)->first) == s_data.cont.back().second);
BOOST_ASSERT(s_data.index.find(k)->first == k);
- if(s > max_cache_size)
+ if(s > l_max_cache_size)
{
//
// We have too many items in the list, so we need to start
@@ -137,7 +137,7 @@ boost::shared_ptr object_cache::do_get(const Key& k,
//
list_iterator pos = s_data.cont.begin();
list_iterator last = s_data.cont.end();
- while((pos != last) && (s > max_cache_size))
+ while((pos != last) && (s > l_max_cache_size))
{
if(pos->first.unique())
{
diff --git a/include/boost/regex/v4/basic_regex.hpp b/include/boost/regex/v4/basic_regex.hpp
index 09b0467b..f807fce9 100644
--- a/include/boost/regex/v4/basic_regex.hpp
+++ b/include/boost/regex/v4/basic_regex.hpp
@@ -70,7 +70,7 @@ class named_subexpressions_base
{
public:
virtual int get_id(const charT* i, const charT* j)const = 0;
- virtual int get_id(std::size_t hash)const = 0;
+ virtual int get_id(std::size_t h)const = 0;
#ifdef __GNUC__
// warning supression:
virtual ~named_subexpressions_base(){}
diff --git a/include/boost/regex/v4/perl_matcher_recursive.hpp b/include/boost/regex/v4/perl_matcher_recursive.hpp
index 74c29122..07a1c20f 100644
--- a/include/boost/regex/v4/perl_matcher_recursive.hpp
+++ b/include/boost/regex/v4/perl_matcher_recursive.hpp
@@ -200,11 +200,11 @@ bool perl_matcher::match_startmark()
BidiIterator saved_position = position;
const re_syntax_base* next_pstate = static_cast(pstate->next.p)->alt.p->next.p;
pstate = pstate->next.p->next.p;
- bool r = match_all_states();
+ bool res = match_all_states();
position = saved_position;
if(negated)
- r = !r;
- if(r)
+ res = !res;
+ if(res)
pstate = next_pstate;
else
pstate = alt->alt.p;
@@ -901,7 +901,7 @@ bool perl_matcher::match_endmark()
{
recursion_info saved = recursion_stack.back();
recursion_stack.pop_back();
- const re_syntax_base* saved_state = pstate = saved.preturn_address;
+ pstate = saved.preturn_address;
repeater_count* saved_count = next_count;
next_count = saved.repeater_stack;
*m_presult = saved.results;
diff --git a/include/boost/regex/v4/regex_format.hpp b/include/boost/regex/v4/regex_format.hpp
index 2bd6bac1..4406839f 100644
--- a/include/boost/regex/v4/regex_format.hpp
+++ b/include/boost/regex/v4/regex_format.hpp
@@ -153,6 +153,11 @@ private:
typedef typename boost::is_convertible::type tag_type;
return get_named_sub_index(i, j, tag_type());
}
+#ifdef BOOST_MSVC
+ // msvc-8.0 issues a spurious warning on the call to std::advance here:
+#pragma warning(push)
+#pragma warning(disable:4244)
+#endif
inline int toi(ForwardIter& i, ForwardIter j, int base, const boost::mpl::false_&)
{
if(i != j)
@@ -166,6 +171,9 @@ private:
}
return -1;
}
+#ifdef BOOST_MSVC
+#pragma warning(pop)
+#endif
inline int toi(ForwardIter& i, ForwardIter j, int base, const boost::mpl::true_&)
{
return m_traits.toi(i, j, base);
diff --git a/src/cregex.cpp b/src/cregex.cpp
index f67d3718..5c27330c 100644
--- a/src/cregex.cpp
+++ b/src/cregex.cpp
@@ -31,6 +31,9 @@ typedef boost::match_flag_type match_flag_type;
#ifdef BOOST_MSVC
#pragma warning(disable:4309)
#endif
+#ifdef BOOST_INTEL
+#pragma warning(disable:981 383)
+#endif
namespace boost{
diff --git a/src/icu.cpp b/src/icu.cpp
index 75ca1444..2fa2b3b1 100644
--- a/src/icu.cpp
+++ b/src/icu.cpp
@@ -22,6 +22,10 @@
#define BOOST_REGEX_ICU_INSTANTIATE
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:981 2259 383)
+#endif
+
namespace boost{
namespace re_detail{
diff --git a/src/regex.cpp b/src/regex.cpp
index 0a503820..1f1caa6f 100644
--- a/src/regex.cpp
+++ b/src/regex.cpp
@@ -44,6 +44,9 @@
#endif
#endif
+#ifdef BOOST_INTEL
+#pragma warning(disable:383)
+#endif
namespace boost{
diff --git a/src/wide_posix_api.cpp b/src/wide_posix_api.cpp
index bdb7580e..3c693c67 100644
--- a/src/wide_posix_api.cpp
+++ b/src/wide_posix_api.cpp
@@ -29,6 +29,10 @@
#include
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:981)
+#endif
+
#if defined(BOOST_NO_STDC_NAMESPACE) || defined(__NetBSD__)
namespace std{
# ifndef BOOST_NO_SWPRINTF
diff --git a/test/Jamfile.v2 b/test/Jamfile.v2
index 343db03a..18af0d7d 100644
--- a/test/Jamfile.v2
+++ b/test/Jamfile.v2
@@ -13,8 +13,7 @@ project
# There are unidentified linker problems on these platforms:
mipspro-7.4: static
sun-5.9: static
- msvc:all
- gcc:all
+ all
gcc:-Wextra
gcc:-Wshadow
U_USING_ICU_NAMESPACE=0
@@ -78,6 +77,7 @@ lib boost_regex_recursive :
../src/wide_posix_api.cpp
../src/winstances.cpp
../src/usinstances.cpp
+ ../build//icu_options
:
BOOST_REGEX_RECURSIVE=1
shared:BOOST_REGEX_DYN_LINK=1
diff --git a/test/collate_info/collate_info.cpp b/test/collate_info/collate_info.cpp
index c07fbd3c..ab3e1051 100644
--- a/test/collate_info/collate_info.cpp
+++ b/test/collate_info/collate_info.cpp
@@ -14,6 +14,10 @@
#include
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:1418 981 983 2259)
+#endif
+
#ifdef BOOST_NO_STDC_NAMESPACE
namespace std{
using ::strxfrm;
diff --git a/test/concepts/concept_check.cpp b/test/concepts/concept_check.cpp
index 42e9859d..21448f21 100644
--- a/test/concepts/concept_check.cpp
+++ b/test/concepts/concept_check.cpp
@@ -18,6 +18,10 @@
#ifdef __BORLANDC__
#pragma option -w-8019 -w-8004 -w-8008
#endif
+#ifdef BOOST_INTEL
+#pragma warning(disable:1418 981 983 595 383)
+#endif
+
#include
#include
#if !BOOST_WORKAROUND(_MSC_VER, < 1310) && !defined(BOOST_NO_MEMBER_TEMPLATES) && !defined(__IBMCPP__) && !BOOST_WORKAROUND(__GNUC__, < 3)
diff --git a/test/named_subexpressions/named_subexpressions_test.cpp b/test/named_subexpressions/named_subexpressions_test.cpp
index 41011415..c4c238ae 100644
--- a/test/named_subexpressions/named_subexpressions_test.cpp
+++ b/test/named_subexpressions/named_subexpressions_test.cpp
@@ -12,6 +12,9 @@
#include
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:1418 981 983 383)
+#endif
template
void test_named_subexpressions(charT)
diff --git a/test/pathology/bad_expression_test.cpp b/test/pathology/bad_expression_test.cpp
index 34f21c22..7354d584 100644
--- a/test/pathology/bad_expression_test.cpp
+++ b/test/pathology/bad_expression_test.cpp
@@ -20,6 +20,10 @@
#include
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:1418 981 983 383)
+#endif
+
int test_main( int , char* [] )
{
std::string bad_text(1024, ' ');
diff --git a/test/pathology/recursion_test.cpp b/test/pathology/recursion_test.cpp
index 829caed0..ec187338 100644
--- a/test/pathology/recursion_test.cpp
+++ b/test/pathology/recursion_test.cpp
@@ -20,6 +20,10 @@
#include
#include
+#ifdef BOOST_INTEL
+#pragma warning(disable:1418 981 983 383)
+#endif
+
int test_main( int , char* [] )
{
// this regex will recurse twice for each whitespace character matched:
diff --git a/test/regress/test.hpp b/test/regress/test.hpp
index 9e271288..02a08ef1 100644
--- a/test/regress/test.hpp
+++ b/test/regress/test.hpp
@@ -19,6 +19,14 @@
#ifndef BOOST_REGEX_REGRESS_TEST_HPP
#define BOOST_REGEX_REGRESS_TEST_HPP
+
+#include
+
+#ifdef BOOST_INTEL
+// disable Intel's "remarks":
+#pragma warning(disable:1418 981 383 1419 7)
+#endif
+
#include
#include "test_not_regex.hpp"
#include "test_regex_search.hpp"
diff --git a/test/regress/test_icu.cpp b/test/regress/test_icu.cpp
index 16f667d9..feb5b4a4 100644
--- a/test/regress/test_icu.cpp
+++ b/test/regress/test_icu.cpp
@@ -342,13 +342,13 @@ void test_icu(const wchar_t&, const test_regex_search_tag& )
{
BOOST_REGEX_TEST_ERROR("Expression did not compile when it should have done: " << e.what(), UChar32);
}
- catch(const std::runtime_error& r)
+ catch(const std::runtime_error& e)
{
- BOOST_REGEX_TEST_ERROR("Received an unexpected std::runtime_error: " << r.what(), UChar32);
+ BOOST_REGEX_TEST_ERROR("Received an unexpected std::runtime_error: " << e.what(), UChar32);
}
- catch(const std::exception& r)
+ catch(const std::exception& e)
{
- BOOST_REGEX_TEST_ERROR("Received an unexpected std::exception: " << r.what(), UChar32);
+ BOOST_REGEX_TEST_ERROR("Received an unexpected std::exception: " << e.what(), UChar32);
}
catch(...)
{
@@ -418,15 +418,15 @@ void test_icu(const wchar_t&, const test_invalid_regex_tag&)
{
have_catch = true;
}
- catch(const std::runtime_error& r)
+ catch(const std::runtime_error& e)
{
have_catch = true;
- BOOST_REGEX_TEST_ERROR("Expected a bad_expression exception, but a std::runtime_error instead: " << r.what(), wchar_t);
+ BOOST_REGEX_TEST_ERROR("Expected a bad_expression exception, but a std::runtime_error instead: " << e.what(), wchar_t);
}
- catch(const std::exception& r)
+ catch(const std::exception& e)
{
have_catch = true;
- BOOST_REGEX_TEST_ERROR("Expected a bad_expression exception, but a std::exception instead: " << r.what(), wchar_t);
+ BOOST_REGEX_TEST_ERROR("Expected a bad_expression exception, but a std::exception instead: " << e.what(), wchar_t);
}
catch(...)
{
@@ -624,13 +624,13 @@ void test_icu(const wchar_t&, const test_regex_replace_tag&)
{
BOOST_REGEX_TEST_ERROR("Expression did not compile when it should have done: " << e.what(), UChar32);
}
- catch(const std::runtime_error& r)
+ catch(const std::runtime_error& e)
{
- BOOST_REGEX_TEST_ERROR("Received an unexpected std::runtime_error: " << r.what(), UChar32);
+ BOOST_REGEX_TEST_ERROR("Received an unexpected std::runtime_error: " << e.what(), UChar32);
}
- catch(const std::exception& r)
+ catch(const std::exception& e)
{
- BOOST_REGEX_TEST_ERROR("Received an unexpected std::exception: " << r.what(), UChar32);
+ BOOST_REGEX_TEST_ERROR("Received an unexpected std::exception: " << e.what(), UChar32);
}
catch(...)
{
diff --git a/test/regress/test_simple_repeats.cpp b/test/regress/test_simple_repeats.cpp
index 1ebdc707..30bcae5a 100644
--- a/test/regress/test_simple_repeats.cpp
+++ b/test/regress/test_simple_repeats.cpp
@@ -476,5 +476,9 @@ void test_pocessive_repeats()
TEST_REGEX_SEARCH("x{1,5}+\\w", perl, "xxxxxa", match_default, make_array(0, 6, -2, -2));
TEST_REGEX_SEARCH("x{1,4}+\\w", perl, "xxxxxa", match_default, make_array(0, 5, -2, -2));
TEST_REGEX_SEARCH("x{1,3}+\\w", perl, "xxxxxa", match_default, make_array(0, 4, -2, 4, 6, -2, -2));
+ TEST_INVALID_REGEX("\\d+++", perl);
+ TEST_INVALID_REGEX("\\d*++", perl);
+ TEST_INVALID_REGEX("\\d?++", perl);
+ TEST_INVALID_REGEX("\\d{1,2}++", perl);
}