From 82e5fb4dab466e5302e2109f14d18945a45fb4cf Mon Sep 17 00:00:00 2001
From: Hartmut Kaiser
Date: Mon, 14 Sep 2009 18:15:58 +0000
Subject: [PATCH] Merging Wave from trunk
[SVN r56192]
---
ChangeLog | 16 +
doc/class_reference_ctxpolicy.html | 5 +-
include/boost/wave/cpp_context.hpp | 37 +-
include/boost/wave/cpp_iteration_context.hpp | 13 +-
.../boost/wave/cpplexer/cpp_lex_interface.hpp | 6 +-
.../cpplexer/cpp_lex_interface_generator.hpp | 13 +-
.../boost/wave/cpplexer/cpp_lex_iterator.hpp | 26 +-
include/boost/wave/cpplexer/cpp_lex_token.hpp | 63 ++-
.../wave/cpplexer/detect_include_guards.hpp | 12 +-
.../wave/cpplexer/re2clex/cpp_re2c_lexer.hpp | 105 ++--
.../boost/wave/cpplexer/re2clex/scanner.hpp | 2 +-
include/boost/wave/cpplexer/token_cache.hpp | 2 +-
.../wave/grammars/cpp_expression_grammar.hpp | 6 +-
.../grammars/cpp_expression_grammar_gen.hpp | 2 +-
.../boost/wave/grammars/cpp_grammar_gen.hpp | 2 +-
include/boost/wave/token_ids.hpp | 6 +-
include/boost/wave/util/cpp_ifblock.hpp | 6 +-
include/boost/wave/util/cpp_include_paths.hpp | 6 +-
include/boost/wave/util/cpp_iterator.hpp | 214 +++----
include/boost/wave/util/cpp_macromap.hpp | 70 +--
.../boost/wave/util/cpp_macromap_utils.hpp | 40 +-
include/boost/wave/util/functor_input.hpp | 6 +-
include/boost/wave/util/macro_definition.hpp | 8 +-
include/boost/wave/util/symbol_table.hpp | 6 +-
.../boost/wave/util/transform_iterator.hpp | 84 +--
.../boost/wave/util/unput_queue_iterator.hpp | 166 +-----
include/boost/wave/wave_config.hpp | 4 +-
include/boost/wave/wave_version.hpp | 6 +-
include/boost/wave/whitespace_handling.hpp | 10 +-
samples/advanced_hooks/advanced_hooks.cpp | 10 +-
samples/advanced_hooks/build/Jamfile.v2 | 2 +-
samples/cpp_tokens/build/Jamfile.v2 | 2 +-
samples/cpp_tokens/cpp_tokens.cpp | 4 +-
samples/cpp_tokens/instantiate_slex_lexer.cpp | 2 +-
samples/cpp_tokens/slex/cpp_slex_lexer.hpp | 2 +-
samples/cpp_tokens/slex_interface.hpp | 4 +-
samples/cpp_tokens/slex_iterator.hpp | 22 +-
samples/cpp_tokens/slex_token.hpp | 22 +-
samples/hannibal/build/Jamfile.v2 | 2 +-
samples/hannibal/hannibal.cpp | 9 +-
samples/lexed_tokens/build/Jamfile.v2 | 2 +-
samples/list_includes/build/Jamfile.v2 | 2 +-
.../list_includes/lexertl/lexertl_lexer.hpp | 76 +--
.../lexertl/wave_lexertl_config.hpp | 2 +-
samples/list_includes/lexertl_iterator.hpp | 22 +-
samples/quick_start/build/Jamfile.v2 | 2 +-
samples/real_positions/build/Jamfile.v2 | 2 +-
.../correct_token_positions.hpp | 16 +-
.../real_positions/instantiate_re2c_lexer.cpp | 6 +-
.../real_positions/real_position_token.hpp | 56 +-
samples/real_positions/real_positions.cpp | 30 +-
samples/token_statistics/build/Jamfile.v2 | 2 +-
samples/token_statistics/xlex/xlex_lexer.hpp | 29 +-
.../token_statistics/xlex/xpressive_lexer.hpp | 6 +-
samples/token_statistics/xlex_interface.hpp | 4 +-
samples/token_statistics/xlex_iterator.hpp | 141 +++--
samples/waveidl/build/Jamfile.v2 | 2 +-
samples/waveidl/idllexer/idl.re | 2 +-
.../waveidl/idllexer/idl_lex_interface.hpp | 4 +-
samples/waveidl/idllexer/idl_lex_iterator.hpp | 126 +++--
samples/waveidl/idllexer/idl_re.cpp | 466 ++++++++--------
samples/waveidl/idllexer/idl_re2c_lexer.hpp | 24 +-
src/cpplexer/re2clex/cpp_re.cpp | 20 +-
src/cpplexer/re2clex/cpp_re.inc | 524 +++++++++---------
src/cpplexer/re2clex/strict_cpp_re.inc | 524 +++++++++---------
test/build/Jamfile.v2 | 1 +
test/testwave/testwave.cpp | 12 +-
test/testwave/testwave_app.cpp | 22 +-
tool/cpp.cpp | 81 ++-
tool/cpp_version.hpp | 8 +-
tool/trace_macro_expansion.hpp | 128 +++--
71 files changed, 1719 insertions(+), 1646 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 0bab21a..e49ba94 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -22,6 +22,22 @@ TODO (known issues):
CHANGELOG
+Boost V1.41.0
+- V2.0.3
+- Switched to Re2C V0.13.5
+- Fixed --list_includes/-l command line option of the wave driver tool to
+ correctly indent the generated list of included files.
+- Finally fixed all remaining examples. Everything seems to work fine now.
+- Specifying a custom token type now works as expected. The new lexer interface
+ introduced in V2.0 broke this part.
+- Removed old code related to pre Boost V1.31 (related to V1 of iterator
+ library).
+- Added a new commandline option --macrocounts/-c to the Wave driver application
+ which lists all macro invocation counts to an optionally specified file
+ (default is cout).
+- Fixed compilation problems caused by recent changes to the multi_pass iterator
+ from Spirit V2.1.
+
Boost V1.40.0
- V2.0.2
- Fixed a long standing race condition inhibiting to use Wave in multi threaded
diff --git a/doc/class_reference_ctxpolicy.html b/doc/class_reference_ctxpolicy.html
index f6af694..6af63bc 100644
--- a/doc/class_reference_ctxpolicy.html
+++ b/doc/class_reference_ctxpolicy.html
@@ -52,7 +52,8 @@
This policy type is used as a template parameter to the boost::wave::context<> object, where the default policy provides empty hook functions only.
namespace boost {
namespace wave {
namespace context_policies {
struct default_preprocessing_hooks {
- template <typename ContextT, typename TokenT>
bool found_directive(ContextT const &ctx,
TokenT const &directive);
template <typename ContextT, typename ExceptionT>
void throw_exception(ContextT const &ctx,
ExceptionT const& e);
template <typename ContextT>
bool may_skip_whitespace (ContextT const& ctx,
TokenT &token, bool &skipped_newline);
+ template <typename ContextT, typename TokenT>
bool found_directive(ContextT const &ctx,
TokenT const &directive);
+ template <typename ContextT, typename ExceptionT>
void throw_exception(ContextT const &ctx,
ExceptionT const& e);
template <typename ContextT>
bool may_skip_whitespace (ContextT const& ctx,
TokenT &token, bool &skipped_newline);
template <
typename ContextT, typename TokenT,
typename ContainerT
>
bool evaluated_conditional_expression(
ContextT const &ctx, TokenT const& directive,
ContainerT const& expression, bool expression_value);
template <typename ContextT, typename TokenT>
void skipped_token(ContextT const &ctx,
TokenT const& token);
template <typename ContextT, typename TokenT>
TokenT const& generated_token(ContextT const &ctx,
TokenT const& token);
@@ -372,7 +373,7 @@
1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
Last updated:
- Sunday, October 12, 2008 20:13
+ Tuesday, October 14, 2008 18:45