|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r81798 - in branches/release: . boost boost/wave boost/wave/util libs libs/wave
From: hartmut.kaiser_at_[hidden]
Date: 2012-12-08 11:43:31
Author: hkaiser
Date: 2012-12-08 11:43:30 EST (Sat, 08 Dec 2012)
New Revision: 81798
URL: http://svn.boost.org/trac/boost/changeset/81798
Log:
Wave: merging from trunk
Properties modified:
branches/release/ (props changed)
branches/release/boost/ (props changed)
branches/release/boost/wave/ (props changed)
branches/release/libs/ (props changed)
branches/release/libs/wave/ (props changed)
Text files modified:
branches/release/boost/wave/language_support.hpp | 2 +-
branches/release/boost/wave/util/cpp_iterator.hpp | 9 +++++----
branches/release/libs/wave/ChangeLog | 31 +++++++++++++++++--------------
3 files changed, 23 insertions(+), 19 deletions(-)
Modified: branches/release/boost/wave/language_support.hpp
==============================================================================
--- branches/release/boost/wave/language_support.hpp (original)
+++ branches/release/boost/wave/language_support.hpp 2012-12-08 11:43:30 EST (Sat, 08 Dec 2012)
@@ -39,7 +39,7 @@
support_cpp11 = support_cpp0x,
#endif
- support_option_mask = 0xFFB0,
+ support_option_mask = 0xFFC0,
support_option_emit_contnewlines = 0x0040,
support_option_insert_whitespace = 0x0080,
support_option_preserve_comments = 0x0100,
Modified: branches/release/boost/wave/util/cpp_iterator.hpp
==============================================================================
--- branches/release/boost/wave/util/cpp_iterator.hpp (original)
+++ branches/release/boost/wave/util/cpp_iterator.hpp 2012-12-08 11:43:30 EST (Sat, 08 Dec 2012)
@@ -202,13 +202,14 @@
boost::wave::util::retrieve_macrodefinition(*hit.trees.begin(),
BOOST_WAVE_MACRO_DEFINITION_ID, macrodefinition, act_pos, true);
+ // get rid of trailing T_EOF
+ if (!macrodefinition.empty() && token_id(macrodefinition.back()) == T_EOF)
+ macrodefinition.resize(macrodefinition.size()-1);
+
// If no macrodefinition is given, and the macro string does not end with a
// '=', then the macro should be defined with the value '1'
- if (0 == macrodefinition.size() &&
- '=' != macrostring[macrostring.size()-1])
- {
+ if (macrodefinition.empty() && '=' != macrostring[macrostring.size()-1])
macrodefinition.push_back(token_type(T_INTLIT, "1", act_pos));
- }
// add the new macro to the macromap
return ctx.add_macro_definition(macroname, has_parameters, macroparameters,
Modified: branches/release/libs/wave/ChangeLog
==============================================================================
--- branches/release/libs/wave/ChangeLog (original)
+++ branches/release/libs/wave/ChangeLog 2012-12-08 11:43:30 EST (Sat, 08 Dec 2012)
@@ -20,22 +20,25 @@
CHANGELOG
-- Added util::create_directories() wrapper to account for new behavior of
- boost::filesystem::create_directories().
-- Fixed an obscure problem when preprocessing directives wouldn't be recognized
- if the previous line contained nothing but an empty macro invocation
- (see new test case t_9_023.cpp)
-- Added a new command line option --license=<file> to the Wave driver tool
- which allows to pre-pend the content of a (license) file to every newly
- created file. This option simplifies the implementation of partial
- preprocessing as done on Phoenix, Fusion, etc.
-- Changed the effect of the -N command line option to simply not expand
- the macro by pretending it was not defined. Earlier the whole invocation
- sequence was skipped, now we skip only the macro itself, which still expands
- the arguments for the macro invocation.
+Boost V1.53:
+ - Fixed a problem with context<>::add_macro_definition which sometimes
+ appended a superfluous T_EOF to the macro replacement list.
Boost V1.52.0:
- - Fixed a couple of compilation warnings
+ - Added util::create_directories() wrapper to account for new behavior of
+ boost::filesystem::create_directories().
+ - Fixed an obscure problem when preprocessing directives wouldn't be recognized
+ if the previous line contained nothing but an empty macro invocation
+ (see new test case t_9_023.cpp)
+ - Added a new command line option --license=<file> to the Wave driver tool
+ which allows to pre-pend the content of a (license) file to every newly
+ created file. This option simplifies the implementation of partial
+ preprocessing as done on Phoenix, Fusion, etc.
+ - Changed the effect of the -N command line option to simply not expand
+ the macro by pretending it was not defined. Earlier the whole invocation
+ sequence was skipped, now we skip only the macro itself, which still expands
+ the arguments for the macro invocation.
+ - Fixed a couple of compilation warnings
Boost V1.51.0
- Fixed #7050: Invalid memory write bug in lexing_exception
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk