summaryrefslogtreecommitdiff
path: root/libs/wave
diff options
context:
space:
mode:
Diffstat (limited to 'libs/wave')
-rw-r--r--libs/wave/ChangeLog1083
-rw-r--r--libs/wave/samples/cpp_tokens/cpp_tokens.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/cpp_tokens.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/cpp_tokens_config.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/instantiate_cpp_exprgrammar.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/instantiate_cpp_grammar.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/instantiate_cpp_literalgrs.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/instantiate_defined_grammar.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/instantiate_slex_lexer.cpp2
-rw-r--r--libs/wave/samples/cpp_tokens/slex/cpp_slex_lexer.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/slex/lexer.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/slex_interface.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/slex_iterator.hpp2
-rw-r--r--libs/wave/samples/cpp_tokens/slex_token.hpp2
-rw-r--r--libs/wave/samples/custom_directives/custom_directives.cpp2
-rw-r--r--libs/wave/samples/custom_directives/custom_directives.hpp2
-rw-r--r--libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.cpp2
-rw-r--r--libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.hpp2
-rw-r--r--libs/wave/samples/quick_start/quick_start.cpp2
-rw-r--r--libs/wave/src/cpplexer/re2clex/aq.cpp2
-rw-r--r--libs/wave/src/cpplexer/re2clex/cpp_re.cpp2
-rw-r--r--libs/wave/src/instantiate_cpp_exprgrammar.cpp2
-rw-r--r--libs/wave/src/instantiate_cpp_grammar.cpp2
-rw-r--r--libs/wave/src/instantiate_cpp_literalgrs.cpp2
-rw-r--r--libs/wave/src/instantiate_defined_grammar.cpp2
-rw-r--r--libs/wave/src/instantiate_predef_macros.cpp2
-rw-r--r--libs/wave/src/instantiate_re2c_lexer.cpp2
-rw-r--r--libs/wave/src/instantiate_re2c_lexer_str.cpp2
-rw-r--r--libs/wave/src/token_ids.cpp2
-rw-r--r--libs/wave/src/wave_config_constant.cpp2
-rw-r--r--libs/wave/test/testlexers/cpp_tokens.hpp2
-rw-r--r--libs/wave/test/testlexers/test_lexertl_lexer.cpp2
-rw-r--r--libs/wave/test/testlexers/test_re2c_lexer.cpp2
-rw-r--r--libs/wave/test/testlexers/test_slex_lexer.cpp2
-rw-r--r--libs/wave/test/testlexers/test_xlex_lexer.cpp2
-rw-r--r--libs/wave/test/testwave/cmd_line_utils.hpp2
-rw-r--r--libs/wave/test/testwave/collect_hooks_information.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_005.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_006.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_007.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_008.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_009.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_010.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_011.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_012.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_013.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_014.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_015.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_016.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_017.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_018.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_019.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_020.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_021.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_022.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_023.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_024.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_025.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_026.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_027.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_028.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_029.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_030.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_031.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_032.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_033.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_034.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_035.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_036.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_037.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_1_038.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_005.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_006.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_007.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_008.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_009.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_010.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_011.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_012.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_013.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_014.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_015.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_016.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_017.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_018.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_019.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_019_001.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_019_002.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_019_003.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_020.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_021.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_022.cpp23
-rw-r--r--libs/wave/test/testwave/testfiles/t_2_022.hpp12
-rw-r--r--libs/wave/test/testwave/testfiles/t_3_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_3_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_3_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_3_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_4_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_4_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_4_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_4_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_005.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_006.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_007.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_007.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_008.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_009.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_010.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_011.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_012.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_013.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_014.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_015.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_016.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_017.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_018.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_019.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_020.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_021.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_022.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_023.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_024.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_025.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_026.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_027.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_028.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_029.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_030.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_031.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_031.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_032.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_033.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_034.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_01.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_02.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_03.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_04.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_05.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_06.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_07.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_08.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_09.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_10.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_11.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_12.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_13.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_14.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_5_035_15.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_005.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_006.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_007.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_008.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_009.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_010.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_011.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_012.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_013.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_014.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_015.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_016.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_017.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_018.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_019.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_020.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_021.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_022.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_023.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_024.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_025.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_026.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_027.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_028.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_029.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_029.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_030.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_030.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_031.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_032.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_033.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_034.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_035.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_036.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_037.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_038.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_039.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_040.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_041.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_042.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_043.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_044.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_045.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_046.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_047.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_048.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_049.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_050.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_051.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_052.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_053.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_054.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_055.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_056.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_057.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_058.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_059.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_060.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_061.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_062.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_063.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_063.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_064.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_065.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_066.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_066.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_067.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_067.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_068.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_6_069.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_7_001.cpp4
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_001.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_002.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_003.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_004.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_005.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_006.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_007.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_008.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_009.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_010.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_011.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_012.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_013.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_014.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_015.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_016.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_016.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_017.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_018.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_019.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_019.hpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_020.cpp2
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_021.cpp24
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_022.cpp18
-rw-r--r--libs/wave/test/testwave/testfiles/t_9_023.cpp31
-rw-r--r--libs/wave/test/testwave/testfiles/test.cfg4
-rw-r--r--libs/wave/test/testwave/testwave.cpp110
-rw-r--r--libs/wave/test/testwave/testwave_app.cpp451
-rw-r--r--libs/wave/test/testwave/testwave_app.hpp63
-rw-r--r--libs/wave/test/testwave/testwave_app_dll.cpp2
-rw-r--r--libs/wave/test/testwave/testwave_dll.cpp2
268 files changed, 1252 insertions, 1085 deletions
diff --git a/libs/wave/ChangeLog b/libs/wave/ChangeLog
index 76d4558830..a6acd91c58 100644
--- a/libs/wave/ChangeLog
+++ b/libs/wave/ChangeLog
@@ -7,124 +7,153 @@ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-------------------------------------------------------------------------------
TODO (known issues):
-- Fix expansion of macros, which replacement-list terminates in a partial
+- Fix expansion of macros, which replacement-list terminates in a partial
macro expansion.
-- Fix the re2c lexer for iterators others then string::iterator (or more
+- Fix the re2c lexer for iterators others then string::iterator (or more
generally for iterators, which aren't random access iterators)
- Try to remove the second parameter from the pp_iterator<>::force_include
function.
-- Fix the trigraph backslash problem in the re2c (C/C++ and IDL) scanners, if
+- Fix the trigraph backslash problem in the re2c (C/C++ and IDL) scanners, if
there is the end of the (internal) buffer just in between a '??/' and a '\n'.
-------------------------------------------------------------------------------
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.51.0
+ - Fixed #7050: Invalid memory write bug in lexing_exception
+ - Fixed #7159: Text-lines are processed as if they were preprocessing directives
+ - Changed --c++0x command line option to --c++11.
+
+Boost V1.50.0
+ - V2.3.2
+ - Fixed #6758: not all members are initialized by base_iteration_context
+ constructor.
+ - Fixed #6838: Adding include file with force_include makes Wave fail to emit
+ #line directive
+ - Added support for test of --forceinclude option to testwave executable,
+ added test case verifying #6838 is fixed.
+ - Fixed #6870: build wave driver failed
+
Boost V1.48.0
- V2.3.1
- Added the flag support_option_emit_contnewlines allowing to control whether
backslash newline sequences are emitted by the Wave library. The default is
- as before: these tokens will be silently ignored (after the token positions
+ as before: these tokens will be silently ignored (after the token positions
have been properly updated). Note: this option is supported by the SLex lexer
module only.
- Fixed #5887: flex_string.hpp needs to include <ios>
Boost V1.47.0
- V2.3.0
-- After preprocessing the body of any #pragma wave option() the wave tool now
+- After preprocessing the body of any #pragma wave option() the wave tool now
concatenates all adjacent string literals into a single string literal.
-- Fixed whitespace handling, added a corresponding set of test cases
+- Fixed whitespace handling, added a corresponding set of test cases
(t_9_020.cpp)
- Added a new preprocessing hook: locate_include_file allowing to customize the
way include files are located.
-- Added new command line option --noexpand/-N to the Wave driver allowing to
- suppress macro expansion for a given macro name (works for both, object like
- and function like macros). This option has to be used very carefully as it
+- Added new command line option --noexpand/-N to the Wave driver allowing to
+ suppress macro expansion for a given macro name (works for both, object like
+ and function like macros). This option has to be used very carefully as it
not only leaves the whole macro invocation untouched in the generated output
- but also removes this macro from consideration for Wave itself. This can
- cause unexpected results if the suppressed macro would influence #ifdef's
+ but also removes this macro from consideration for Wave itself. This can
+ cause unexpected results if the suppressed macro would influence #ifdef's
later on.
-- Fixed problem #5554: wave slex parser eof without eol skips the last line.
+- Fixed Wave driver to retain all macros defined on the command line in
interactive mode.
- Fixed #5569: slex CONTLINE token works only for LF line endings
Boost V1.46.0
- V2.2.0
- Added recognition of C++0x keywords to Re2C lexers.
-- Added --c++0x command line option to Wave to enabling the recognition of
+- Added --c++0x command line option to Wave to enabling the recognition of
C++0x keywords, converting those to C++0x tokens.
-- Adapted all of the library to play well with Boost.Filesystem V3 (which is
+- Adapted all of the library to play well with Boost.Filesystem V3 (which is
the default from now on).
- Added support for extended character and string literals, added test case
(which required to add C++0x support to the test application).
-- Added proper predefined macros fro --c++0x mode. __cplusplus is currently
+- Added proper predefined macros fro --c++0x mode. __cplusplus is currently
defined to 201101L, but this will change when the Standard is finalized.
-- Fixed a problem with object like macros, which when being adjacent to a
+- Fixed a problem with object like macros, which when being adjacent to a
parenthesis, caused the parenthesis to disappear when the macro expansion
was suppressed by the expanding_object_like_macro() hook function.
-- Fixed a bug in pragma option(preserve), missing to set to preserve=1 if
+- Fixed a bug in pragma option(preserve), missing to set to preserve=1 if
after the previous value was preserve=2.
-- Changed the --preserve option of the wave tool to interprete the integer
- argument in a slightly different way:
- 0: no whitespace is preserved,
- 1: only begin of line whitespace is preserved,
- 2: only begin of line whitespace and comments are preserved,
+- Changed the --preserve option of the wave tool to interprete the integer
+ argument in a slightly different way:
+ 0: no whitespace is preserved,
+ 1: only begin of line whitespace is preserved,
+ 2: only begin of line whitespace and comments are preserved,
3: all whitespace is preserved
- The #pragma wave option(preserve) now supports these arguments:
+ The #pragma wave option(preserve) now supports these arguments:
[0|1|2|3|push|pop].
Boost V1.45.0
- V2.1.0
-- Token pasting is well formed only as long as the formed token(s) are
- pp_tokens as defined by the C++0x Standard. Until now, Wave allowed for
- non-pp_tokens to be formed in --variadics mode.
-- Fixed a problem, which prevented reporting /##/ in a macro definition as
+- Token pasting is well formed only as long as the formed token(s) are
+ pp_tokens as defined by the C++0x Standard. Until now, Wave allowed for
+ non-pp_tokens to be formed in --variadics mode.
+- Fixed a problem, which prevented reporting /##/ in a macro definition as
invalid token pasting.
- Fixed problem preventing the skipped_token hook to be called for 'inactive'
conditional preprocessing directive tokens. Improved overall consistency in
reporting skipped tokens to the hooks function when processing conditional
preprocessing directives. Added a new test case verifying the skipped_token
hook gets called reproducibly (t_2_020.cpp).
-- Fixed a problem with the pp hooks 'expanding_object_like_macro' and
+- Fixed a problem with the pp hooks 'expanding_object_like_macro' and
'expanding_function_like_macro', which when returning true were stopping all
preprocessing instead of just inhibiting the expansion of the macro.
-- Fixed a duplicated call to the pp hook skipped_token for preprocessing
+- Fixed a duplicated call to the pp hook skipped_token for preprocessing
directives inside inactive conditional branches.
- Changing exception handling to fix clang++ regression errors.
- Replaced assert() with BOOST_ASSERT to pacify the Boost inspect tool.
Boost V1.44.0
- V2.0.6
-- Added information about the file type to iteration context. This can be
- either main_file, system_header, or user_header depending whether the handled
- file is the main file to preprocess, a include file opened from `#include <>`,
- or a include file opened from `#include ""`.
-- Added support for new Boost visibility macros. Properly exported all
+- Added information about the file type to iteration context. This can be
+ either main_file, system_header, or user_header depending whether the handled
+ file is the main file to preprocess, a include file opened from `#include <>`,
+ or a include file opened from `#include ""`.
+- Added support for new Boost visibility macros. Properly exported all
exceptions, etc.
Boost V1.43.0
- V2.0.5
- Fixed the wave driver application to strip leading and trailing whitespace
from macro names specified on the command line using -U.
-- Fixed line number counting for lines containing nothing but whitespace
+- Fixed line number counting for lines containing nothing but whitespace
followed by a C++ comment if the next line is a pp directive.
- Fixed emitting of a #line directive after returned from an include file.
-- A couple of fixes allowing to properly report the current line number in
+- A couple of fixes allowing to properly report the current line number in
#line directives for different whitespace preserve modes (see --preserve/-p).
-- Added new preprocessing hook: emit_line_directive, allowing to customize the
+- Added new preprocessing hook: emit_line_directive, allowing to customize the
format of the generated #line directive.
-- Changed --line/-l command line option of the wave driver application to
- accept 0, 1, and 2 as options. The option values 0 and 1 behave as before
+- Changed --line/-l command line option of the wave driver application to
+ accept 0, 1, and 2 as options. The option values 0 and 1 behave as before
(disable/enable the generation of #line directives), while the option value 2
will generate the #line directive using the relative filename (instead of the
absolute filename emitted from option 1). The default option is value 1.
-- Added new example: emit_custom_line_directives, demonstrating the use of the
+- Added new example: emit_custom_line_directives, demonstrating the use of the
new preprocessing hook.
-- Added new preprocessing hook: found_unknown_directive, which is being invoked
- whenever an unknown preprocessor directive (i.e. '#' followed by some
- identifier) is detected. It allows to interpret the directive and to provide
+- Added new preprocessing hook: found_unknown_directive, which is being invoked
+ whenever an unknown preprocessor directive (i.e. '#' followed by some
+ identifier) is detected. It allows to interpret the directive and to provide
some replacement text.
-- Added new example: custom_directives demonstrating the usage of the new
+- Added new example: custom_directives demonstrating the usage of the new
preprocessing hook.
- Fixed #4113: cpp_lexer does not handle qualified backslashes correctly.
- Fixed #3106: wave on VS2010 beta compiler generates error.
@@ -136,31 +165,31 @@ Boost V1.42.0
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
+- 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
+- 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
+ 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.
-- Added the new preprocessing hooks detected_pragma_once() and
- detected_include_guard() which are getting called whenever either a #pragma
- once has been detected or if the include guard heuristics detected an
+- Added the new preprocessing hooks detected_pragma_once() and
+ detected_include_guard() which are getting called whenever either a #pragma
+ once has been detected or if the include guard heuristics detected an
include guard for a particular include file.
-- Added a new command line option to the wave driver tool: --listguards/-g
- allowing to trace all include files which are either contain a #pragma once
+- Added a new command line option to the wave driver tool: --listguards/-g
+ allowing to trace all include files which are either contain a #pragma once
or contain include guards.
-- Started to elminate g++ struct aliasing warnings (more to fix, mostly in
+- Started to elminate g++ struct aliasing warnings (more to fix, mostly in
flex_string).
Boost V1.40.0
- V2.0.2
-- Fixed a long standing race condition inhibiting to use Wave in multi threaded
+- Fixed a long standing race condition inhibiting to use Wave in multi threaded
environments.
- Incorporated the changes from latest version of the flex_string class (#2946).
- Fixed another race condition triggering problems using Wave in multi-threaded
@@ -168,41 +197,41 @@ Boost V1.40.0
Boost V1.39.0
- V2.0.1
-- Fixed Wave to compile with BOOST_FILESYSTEM_NO_DEPRECATED defined (i.e. the
+- Fixed Wave to compile with BOOST_FILESYSTEM_NO_DEPRECATED defined (i.e. the
library doesn't use the deprecated filesystem interface anymore).
Boost V1.37.0
-- Updated examples to reflect the recent changes in the used multi_pass
+- Updated examples to reflect the recent changes in the used multi_pass
iterator.
-- Fixed documentation links still pointing to the old Boost CVS (thanks to
+- Fixed documentation links still pointing to the old Boost CVS (thanks to
Jürgen Hunold for providing the patch).
Boost V1.36.0
-- Wave Version 2.0 is a new major release introducing some breaking API changes,
- preventing it to be used with Boost versions earlier than V1.36.0. The API
- and hook interface have been streamlined for more consistency. See the
+- Wave Version 2.0 is a new major release introducing some breaking API changes,
+ preventing it to be used with Boost versions earlier than V1.36.0. The API
+ and hook interface have been streamlined for more consistency. See the
documentation for more details.
-- Added an additional template parameter to the context object, allowing to
+- Added an additional template parameter to the context object, allowing to
specify any possibly derived type. This change propagates to the preprocessing
- hooks, which now get passed the most derived context type as its first
+ hooks, which now get passed the most derived context type as its first
argument allowing to access protected members in the original context type.
This fixes ticket #1752.
-- Fixed a problem during parsing of #pragma wave directive, where the value
+- Fixed a problem during parsing of #pragma wave directive, where the value
sequence contained a closing parenthesis. This caused a premature end of the
pragma value parsing.
-- Fixed handling of support_option_single_line, which was ignored under certain
+- Fixed handling of support_option_single_line, which was ignored under certain
circumstances.
-- Fixed ticket #1766: Wrong evaluation of conditional preprocessor directives
- with predefined macros __FILE__, __LINE__ and __INCLUDE_LEVEL__. This bug
- triggered an error in constructs like #ifndef __FILE__. Thanks to Daniel
+- Fixed ticket #1766: Wrong evaluation of conditional preprocessor directives
+ with predefined macros __FILE__, __LINE__ and __INCLUDE_LEVEL__. This bug
+ triggered an error in constructs like #ifndef __FILE__. Thanks to Daniel
Wadehn for reporting and supplying a patch. Added corresponding regression
test: t_2_018.cpp.
- Fixed a bug which reported a valid macro redefinition as invalid if the macro
replacement text referred to a second or higher parameter of this macro.
-- Fixed a problem in the wave tool to allow two errors to occur while
+- Fixed a problem in the wave tool to allow two errors to occur while
preprocessing two consecutive tokens.
-- Adjusted Spirit header includes to point to conform to the new directory
+- Adjusted Spirit header includes to point to conform to the new directory
structure, removed support for Spirit versions earlier than V1.7.
- Started to migrate to new multi_pass iterators from Spirit V2.0.
@@ -211,75 +240,75 @@ Boost V1.35.0
- Changed the return value of the 'evaluated_conditional_expression()' pp hook
to 'bool' allowing to force Wave to re-evaluate the current conditional
expression. This was suggested by Felipe Magno de Almeida.
-- Added a wave::context object as first parameter to all pp hook functions.
- This is an interface compatibility breaking change. The new pp-hooks can be
- disabled by defining the BOOST_WAVE_USE_DEPRECIATED_PREPROCESSING_HOOKS
- compile time constant to something not equal to zero. By default this
+- Added a wave::context object as first parameter to all pp hook functions.
+ This is an interface compatibility breaking change. The new pp-hooks can be
+ disabled by defining the BOOST_WAVE_USE_DEPRECIATED_PREPROCESSING_HOOKS
+ compile time constant to something not equal to zero. By default this
constant will be defined to zero for Boost V1.35.0 and newer, switching to
the new interface by default.
- Added optional support for the import keyword (needed for the C++ module
- proposal). The identifier import will be recognized as a keyword, if
- the compile time constant BOOST_WAVE_SUPPORT_IMPORT_KEYWORD is defined to
+ proposal). The identifier import will be recognized as a keyword, if
+ the compile time constant BOOST_WAVE_SUPPORT_IMPORT_KEYWORD is defined to
something not equal zero.
-- Added new preprocessing hook functions: found_error_directive() and
+- Added new preprocessing hook functions: found_error_directive() and
found_warning_directive() to be called when #error/#warning directives are
encountered. This was suggested by Andreas Sæbjørnsen.
- Added a new sample to Wave: hannibal, a partial C++ parser implementation
initially written by Danny Havenith (http://havenith-verlinden.nl/hannibal/)
who agreed to add this here. Thanks!
-- Added new preprocessing hook function: found_line_directive() to be called
+- Added new preprocessing hook function: found_line_directive() to be called
when a #line directive is encountered. This was suggested by Andreas
Sæbjørnsen.
- Improved command line handling for the wave applet.
-- Incorporated latest bug fixes for the Hannibal sample provided by Danny
- Havenith.
-- Added loading of a wave.cfg file from anywhere up the filesystem hierarchy
- starting from the main input file for the wave driver applet up to the
+- Incorporated latest bug fixes for the Hannibal sample provided by Danny
+ Havenith.
+- Added loading of a wave.cfg file from anywhere up the filesystem hierarchy
+ starting from the main input file for the wave driver applet up to the
root of the file system.
- Added support_option_emit_pragma_directive to allow to control at runtime,
- whether unknown #pragma directives should be emitted or not. To maintain
+ whether unknown #pragma directives should be emitted or not. To maintain
compatibility with earlier versions this option is by default on if the
- compile time constant BOOST_WAVE_EMIT_PRAGMA_DIRECTIVES was defined to
+ compile time constant BOOST_WAVE_EMIT_PRAGMA_DIRECTIVES was defined to
be not equal to zero and it is off otherwise.
- Enabled XML serialization support.
-- Added the throw_exception preprocessing hook, which gets called for every
+- Added the throw_exception preprocessing hook, which gets called for every
occurring error (whenever an exception would have been thrown). The default
- of this new hook function is to throw the corresponding exception, which
+ of this new hook function is to throw the corresponding exception, which
reproduces the old behavior.
- Implemented a new preprocessing hook: generated_token(), which get's called
whenever a token is about to be returned form the library. This function may
- be used to alter the token before it gets returned to the calling
+ be used to alter the token before it gets returned to the calling
application.
- Added a new sample 'real_positions' demonstrating the new generated_token()
- preprocessing hook and showing how to use Wave with a new token type without
+ preprocessing hook and showing how to use Wave with a new token type without
using a new lexer type.
-- Factored out the pure lex_input_interface to simplify writing different lexer
+- Factored out the pure lex_input_interface to simplify writing different lexer
types for Wave.
-- Added the token_statistics sample showing how to use Xpressive to build a
+- Added the token_statistics sample showing how to use Xpressive to build a
lexer for Wave.
-- Changed the list_includes sample to use a lexer which is based on the lexertl
+- Changed the list_includes sample to use a lexer which is based on the lexertl
library written by Ben Hanson (http://www.benhanson.net/lexertl.html).
-- Added a new support_option: insert_whitespace, allowing to switch off
+- Added a new support_option: insert_whitespace, allowing to switch off
whitespace insertion which is normally (by default) in place to disambiugate
C++ tokens, which would otherwise form different tokens in the output.
- Added a new commandline option to the Wave applet: --disambiguate, allowing
- to control whitespace insertion. The default value for this option is
+ to control whitespace insertion. The default value for this option is
--disambiguate=1, resembling the previous behaviour. Specifying the option
--disambiguate=0 allows to suppress whitespace insertion alltogether.
-- Added pragma option values push and pop to the line, preserve and output
+- Added pragma option values push and pop to the line, preserve and output
options allowing to store and restore the current option. The syntax is:
#pragma wave options(<option>: push) and
#pragma wave options(<option>: pop)
- where <option> may be line, preserve or output. Thanks to Eric Niebler for
+ where <option> may be line, preserve or output. Thanks to Eric Niebler for
suggesting this feature.
-- Added the possibility to use static pre-compiled DFA tables for the lexertl
+- Added the possibility to use static pre-compiled DFA tables for the lexertl
based lexer.
-- Incorporated the changes from Andrei's latest version of the flex_string
+- Incorporated the changes from Andrei's latest version of the flex_string
class.
-- Added the is_macro_defined(name) function to the context object as described
- in the documentation. This function is usable with any string type compatible
+- Added the is_macro_defined(name) function to the context object as described
+ in the documentation. This function is usable with any string type compatible
with std::string.
-- Changed behavior of the --force_include functionality, which now looks for
+- Changed behavior of the --force_include functionality, which now looks for
the file to be (force-)included in the current directory first.
- Switched to Re2C V0.11.2
- Added const specifiers to some of the context member functions.
@@ -287,95 +316,95 @@ Boost V1.35.0
- Fixed a runtime problem in the Re2C generated lexers when feeded with
empty input files (thanks to Leo Davis for reporting and providing a patch).
- Added the is_eoi() function to token classes, returning true if the token
- has been initialized to be the end of input token (T_EOI) (thanks to Ovanes
+ has been initialized to be the end of input token (T_EOI) (thanks to Ovanes
Markarian for suggesting this).
- Added missing #includes <cstring>, <cstdlib>, and <new> to flex_string.hpp.
- Added missing #include <climits> to cpp_chlit_grammar.hpp.
-- Changed found_include_directive hook function to return a bool indicating,
- whether the file should be included (true) or skipped (false). Thanks to
+- Changed found_include_directive hook function to return a bool indicating,
+ whether the file should be included (true) or skipped (false). Thanks to
Felipe Magno de Almeida for suggesting this feature.
- Added code to the wave driver applet ignoring a #import directive (the whole
- directive is passed through to the output) whenever the pp constant
+ directive is passed through to the output) whenever the pp constant
BOOST_WAVE_SUPPORT_MS_EXTENSIONS is defined to something not equal to zero.
- Fixed the wave driver applet to correctly continue after a error or warning.
-- Added a macro introspection facility allowing to iterate on all defined macro
+- Added a macro introspection facility allowing to iterate on all defined macro
names.
- Added a new commandline option --macronames/-m to the Wave driver application
- which lists all defined macros and their definitions to an optionally
+ which lists all defined macros and their definitions to an optionally
specified file (default is cout).
- Fixed configuration to take into account thread related build settings.
- Added the BOOST_WAVE_SUPPORT_LONGLONG_INTEGER_LITERALS pp constant allowing
- to recognize large integer literals (larger in size than long/unsigned long)
- even if these do not have a 'll' suffix. This pp constant is effective only,
- if the target platform supports long long integers (BOOST_HAS_LONG_LONG is
+ to recognize large integer literals (larger in size than long/unsigned long)
+ even if these do not have a 'll' suffix. This pp constant is effective only,
+ if the target platform supports long long integers (BOOST_HAS_LONG_LONG is
defined).
-- The following preprocessing hooks now return a boolean value, which when
- returning 'true' cause the Wave library to skip the execution of the related
+- The following preprocessing hooks now return a boolean value, which when
+ returning 'true' cause the Wave library to skip the execution of the related
preprocessing action:
. found_directive: allows to skip the whole directive it is called for
. expanding_object_like_macro: allows to skip expansion of the given object
like macro, the macro symbol is copied to the output
. expanding_function_like_macro: allows to skip the expansion of the given
- function like macro, the whole macro invocation (including all
- macro invocation parameters) are copied to the output without any
+ function like macro, the whole macro invocation (including all
+ macro invocation parameters) are copied to the output without any
further processing.
-- Changed the interpretation of the return value of the found_include_directive
- preprocessing hook: a return value of 'false' now processes the file
- to be included normally and a return value of 'true' now skips the processing
- of the include file directive (the file doesn't get included).
- This change was necessary to make the return values of the preprocessing
- hooks consistent. Now return 'false' generally means: normal execution and
- return 'true' generally means: skip execution of the corresponding
+- Changed the interpretation of the return value of the found_include_directive
+ preprocessing hook: a return value of 'false' now processes the file
+ to be included normally and a return value of 'true' now skips the processing
+ of the include file directive (the file doesn't get included).
+ This change was necessary to make the return values of the preprocessing
+ hooks consistent. Now return 'false' generally means: normal execution and
+ return 'true' generally means: skip execution of the corresponding
preprocessor action.
-- Fixed compilation problems on gcc, fixed ambiguity with boost code (detail
+- Fixed compilation problems on gcc, fixed ambiguity with boost code (detail
namespace was ambigious).
- Fixed predefined macro support to be thread safe.
-- Added missing file to real_positions example. Thanks to Ludovic Aubert for
+- Added missing file to real_positions example. Thanks to Ludovic Aubert for
spotting the problem.
-- Unterminated C++/C comment diagnostics are now a warning and not an error
+- Unterminated C++/C comment diagnostics are now a warning and not an error
anymore.
-- Applied patch provided by Jens Seidel making sure every header compiles on
+- Applied patch provided by Jens Seidel making sure every header compiles on
its own.
- Updates to the documentation.
- Fixed a problem in flex_string::compare() (#include_next was non-functional).
- Fixed a bug in the pp hook expanding_function_like_macro(), where the seqend
parameter was set to the first token after the closing parenthesis instead of
pointing at it.
-- Added the BOOST_WAVE_SUPPORT_THREADING allowing to explicitely control
- whether the Wave library is built with threading support enabled. If not
+- Added the BOOST_WAVE_SUPPORT_THREADING allowing to explicitely control
+ whether the Wave library is built with threading support enabled. If not
defined the build settings will be picked up from the Boost build environment
(BOOST_HAS_THREADS).
-- Fixed a whitespace insertion glitch, where whitespace got inserted
+- Fixed a whitespace insertion glitch, where whitespace got inserted
unconditionally between two operators even if one of these was a comma.
-- Fixed #line directive after a macro invocation containing newlines to
+- Fixed #line directive after a macro invocation containing newlines to
correctly reference the line number.
-- Positions of macros defined on the command line now get properly reported as
+- Positions of macros defined on the command line now get properly reported as
"<command line>":1:...
- Added testing of the preprocessor hooks.
Boost V1.34.0
- Wave Version 1.2.4
-- Added the possibility to explicitly enable/disable the generation of #line
- directives. Added a corresponding commandline argument to the Wave driver
+- Added the possibility to explicitly enable/disable the generation of #line
+ directives. Added a corresponding commandline argument to the Wave driver
tool (--line/-L) which takes either 0 or 1 as its parameter.
-- Added support for #pragma wave option(command: value) directives, which
+- Added support for #pragma wave option(command: value) directives, which
supports the following commands:
- . #pragma wave option(line: [0|1])
+ . #pragma wave option(line: [0|1])
Enable/disable generation of #line directives
- . #pragma wave option(preserve: [0|1|2])
+ . #pragma wave option(preserve: [0|1|2])
Control whitespace preservation
. #pragma wave option(output: ["filename" | null | default])
Redirect output to the given file (or no output, if 'null' is specified,
- or output to the file as given on the command line, if 'default' is
+ or output to the file as given on the command line, if 'default' is
specified).
The filename is resolved relative to the directory of the processed
file.
These new #pragma directives are implemented in the Wave driver tool only.
It is possible to combine several options in one #pragma directive, i.e.
#pragma wave option(line: 0, preserve: 2).
-- Changed the signature of the may_skip_whitespace() preprocessing hook to
+- Changed the signature of the may_skip_whitespace() preprocessing hook to
additionally take the preprocessing context as its first parameter.
-- Added the possibility to the Wave tool to disable initial output by
+- Added the possibility to the Wave tool to disable initial output by
specifying a '-' as the output file. This is useful for syntax checks only or
in conjunction with the #pragma wave option(output: ...) to restrict the
generated output.
@@ -383,27 +412,27 @@ Boost V1.34.0
- Switched to Re2C V0.10.0
- Fixed some of the VC7.1 /W4 warnings.
- The Wave tool now creates the directory hierarchy of output files as needed.
-- Applied some optimization, which causes skipping of the parsing for almost
+- Applied some optimization, which causes skipping of the parsing for almost
all preprocessor directives when the if block status is false. This gains
upto 10-20% in speed for average applications.
-- Added error diagnostic for #elif without matching #if, which was missing
+- Added error diagnostic for #elif without matching #if, which was missing
under certain circumstances.
- Avoided the evaluation of #elif expressions if one of the previous #if/#elif
blocks of the same level was true. This gains upto another 5% of speed for
average applications.
- The MS specific integer suffix 'i64' is now correctly supported by the Re2C
- and SLex lexer components (only when BOOST_WAVE_SUPPORT_MS_EXTENSIONS is
+ and SLex lexer components (only when BOOST_WAVE_SUPPORT_MS_EXTENSIONS is
defined during compilation).
- Changed the Wave tool to print the column number of an error/warning along
with the line number. The new format is: 'filename:line:column: error text'.
-- It is now possible to recover from the unbalanced #if/#endif statement
+- It is now possible to recover from the unbalanced #if/#endif statement
warning in a proper way.
- The Wave library now automaticaly recognizes include guards in headers files
and uses this information to avoid opening these header files more than once.
This speeds up things by upto 10-20% depending on the concrete include files.
-- Fixed the failing test t_6_023.cpp. Error reporting for illformed #else
+- Fixed the failing test t_6_023.cpp. Error reporting for illformed #else
directives was broken (because of some recent changes).
-- Fixed the failing test t_5_007.cpp. This was caused by the automatic include
+- Fixed the failing test t_5_007.cpp. This was caused by the automatic include
guard detection, which prevented the second inclusion of the specified
include file the test was relying on.
- Added the possibility to switch off the automatic include guard detection.
@@ -413,16 +442,16 @@ Boost V1.34.0
after its include guard symbol gets undefined.
- Added the generating platform to Wave's full version string.
- Made the Wave tool fully interactive when started with input from stdin and
- and output to stdout. In this mode the Wave tool preprocesses the input
+ and output to stdout. In this mode the Wave tool preprocesses the input
line by line and not only after receiving the full input as normally.
-- Added serialization support for the wave::context object, which stores
+- Added serialization support for the wave::context object, which stores
all information about defined macros and all #pragma once header information.
-- Added the command line option --state (-s) to the Wave tool, which tries to
- load the serialized information from the file given as the argument to
- --state and save the state information at the end to the same file.
- This option is available in interactive mode only.
-- Added possibility to verify the compatibility of the configuration used
- during compilation of the Wave library with the config info used for the
+- Added the command line option --state (-s) to the Wave tool, which tries to
+ load the serialized information from the file given as the argument to
+ --state and save the state information at the end to the same file.
+ This option is available in interactive mode only.
+- Added possibility to verify the compatibility of the configuration used
+ during compilation of the Wave library with the config info used for the
application. Added a corresponding test to the Wave tool.
- Added a new predefined macro __WAVE_CONFIG__ which expands to an integer
literal containg the configuration information the library was compiled
@@ -430,84 +459,84 @@ Boost V1.34.0
- Added proper versioning support to the serialization of state.
- Fixed the macro tracing information to contain the column numbers of the macro
definitions as well (the format used is the same as for error messages).
-- Fixed a memory leak in the flex_string copy on write code (thanks to Tobias
+- Fixed a memory leak in the flex_string copy on write code (thanks to Tobias
Schwinger for reporting this bug).
- Fixed a memory corruption bug in the Re2C scanner buffer management code
(thanks to Andreas Sæbjørnsen for spotting the bug).
-- Fixed a major performance bottleneck in the lex_token class. This speeds up
- Wave for upto another 20-40% depending on the amount of macro expansions to
+- Fixed a major performance bottleneck in the lex_token class. This speeds up
+ Wave for upto another 20-40% depending on the amount of macro expansions to
perform.
- Added the BOOST_SPIRIT_USE_BOOST_ALLOCATOR_FOR_TREES and the
- BOOST_SPIRIT_USE_LIST_FOR_TREES Spirit configration constants to the
+ BOOST_SPIRIT_USE_LIST_FOR_TREES Spirit configration constants to the
wave_config.hpp to allow to fine tune the generated Spirit tree code. VC7.1
gives best results when both are defined.
- Fixed a memory corruption bug triggered by a possible dangling reference.
- Fixed Wave tools startup crash when compiled with VC8.
-- Added the name of the generating compiler (BOOST_COMPILER) to the full
+- Added the name of the generating compiler (BOOST_COMPILER) to the full
Wave version info.
- Fixed all Jamfile.v2 to correctly disable RTTI for VC7.1.
- Added #pragma message("...") to be optionally supported by the Wave library.
This may be enabled by defining the BOOST_WAVE_SUPPORT_PRAGMA_MESSAGE pp
constant to some value different from zero.
-- Fixed a couple of typos in the file cpp.cpp preventing it to compile on
+- Fixed a couple of typos in the file cpp.cpp preventing it to compile on
gcc 4.1.0 (thanks to Richard Guenther for reporting these).
- Richard Guenther fixed another buffer overrun problem in the Re2C scanner.
- Fixed Jamfile.v2 files for all sample applications.
- Fixed a bug which lead to reporting of an illegal preprocessing directive
inside not-evaluated conditional blocks under certain circumstances (thanks
to Tobias Schwinger for reporting).
-- Fixed '#define true ...', '#define false ...' and other constructs, i.e. the
+- Fixed '#define true ...', '#define false ...' and other constructs, i.e. the
usage of the boolean keywords as identifiers during the preprocessing. Added
a corresponding test case (t_9_017.cpp). Thanks to Andreas Sæbjørnsen for
reporting.
-- Corrected the Jamfile[.v2] of the waveidl sample to refer to correct file
+- Corrected the Jamfile[.v2] of the waveidl sample to refer to correct file
names (thanks to Juergen Hunold for submitting a patch).
-- Fixed a bug which prevented the main iterator from returning a T_EOF token
- at the overall end of the input.
-- Fixed a problem, where non-evaluated #elif directives never got passed to the
+- Fixed a bug which prevented the main iterator from returning a T_EOF token
+ at the overall end of the input.
+- Fixed a problem, where non-evaluated #elif directives never got passed to the
skippen_token() pp hook (thanks to Andreas Sæbjørnsen for reporting).
- Fixed a problem in the get_tokenname() function.
- Added a missing #define BOOST_WAVE_SOURCE 1 to the wave_config_constant.cpp
file.
- Fixed exception specifications to catch all exceptions by const&.
-- Fixed predefined macros to appear to be defined at a position referring to
+- Fixed predefined macros to appear to be defined at a position referring to
a file named "<built-in>". Thanks to Andreas Sæbjørnsen for reporting.
- Fixed the Re2C lexer not to segfault on empty files anymore.
- Stripped leading and trailing whitespace for all lines in a config file (Wave
driver tool).
-- Fixed RTTI build issue for VC7.1/bjam --v2 (thanks to Rene Rivera for
+- Fixed RTTI build issue for VC7.1/bjam --v2 (thanks to Rene Rivera for
submitting a patch for the Wave Jamfile.v2).
- Fixed certain problems reported by the Boost inspection tool.
- Fixed a couple of SunPro5.8 warnings.
- Fixed a bug resulting in a crash if a macro was redefined with a shorter
expansion list as it was defined initially. Added a corresponding test case.
-- Fixed a bug causing an infinite loop when there was a missing endif in the
+- Fixed a bug causing an infinite loop when there was a missing endif in the
main preprocessed file.
- Improved error recovery for illegal preprocessing directive errors.
-- Improved error handling and error recovery for conditional expressions
+- Improved error handling and error recovery for conditional expressions
(#if/#elif expressions).
-- Wave now passes 160 out of 161 tests from the MCPP V2.6.1 validation
+- Wave now passes 160 out of 161 tests from the MCPP V2.6.1 validation
testsuite!
- Added new warning for invalid #line number and filename arguments
- Improved error diagnostics for invalid #line directives containing arbitrary
tokens after at the end of the line.
-- Improved error handling wrt the misuse of the __VA_ARG__ token in macro
+- Improved error handling wrt the misuse of the __VA_ARG__ token in macro
definitions.
- The warning, that a file is not terminated by a newline is now issued for all
files, not only for the main file (as previous).
- Added a couple of new test cases to verify various diagnostics.
- Fixed wave applet not to report missing #endif's when in interactive mode.
- Cleaned up the Re2C lexer code.
-- Fixed a bug, where a empty line followed by an arbitrary token and followed
+- Fixed a bug, where a empty line followed by an arbitrary token and followed
by a preprocessing directive interpreted the preprcessing directive as if it
were the first non-whitespace token on the line. This error occured only
if the #line directive generation was suppressed. Thanks to Joan Grant for
reporting this problem.
-- Fixed a problem in the Wave applet which prevented the correct recognition of
- Windows file paths in a configuration file, if this path was enclosed in
+- Fixed a problem in the Wave applet which prevented the correct recognition of
+ Windows file paths in a configuration file, if this path was enclosed in
quotes.
- Extended the copyright notice to include the year 2007.
-- Fixed a problem in preserve=1 mode, when a C style comment triggered the
+- Fixed a problem in preserve=1 mode, when a C style comment triggered the
generation of a #line directive.
- Worked around a linker issue for the True64/CXX compiler, complaining about
multiple defined symbols when using the flex_string class.
@@ -515,46 +544,46 @@ Boost V1.34.0
Sat Feb 18 2005
- Version 1.2.3
-- Added a missing throw() specification to the function
+- Added a missing throw() specification to the function
cpp_exception::get_related_name().
- Fix Boost bug ([ boost-Bugs-1395857 ] wave redefines BSIZE).
- Added missing calls to the skipped_token() preprocessing hook which wasn't
called for pp directives inside disabled #if blocks.
- Made the context<> type noncopyable.
-- Introduced the --extended/-x command line option to the wave driver
+- Introduced the --extended/-x command line option to the wave driver
executable, which enables the #pragma wave system() directive. This directive
is now disabled by default because it may cause a potential security threat.
- Changed the what() function of the macro_handling_exception class, which now
correctly returns the name of the exception type itself.
-- Added a diagnostic message to the wave driver executable, which is issued
- whenever a #pragma wave system() directive is found, but the -x (--extended)
+- Added a diagnostic message to the wave driver executable, which is issued
+ whenever a #pragma wave system() directive is found, but the -x (--extended)
command line argument was not given.
- Fixed long integer suffix to be allowed to be mixed case (1Ll or 2lL).
- Fixed the BOOST_PP_CAT(1e, -1) pp-token bug. Wave now correctly recognizes
- pp-number tokens, which are converted to C++ tokens right before they are
+ pp-number tokens, which are converted to C++ tokens right before they are
returned from the library.
-- Moved the implementation of the token_id query functions (get_token_name(),
+- Moved the implementation of the token_id query functions (get_token_name(),
get_token_value()) to a separate source file.
- Fixed a bug, which prevented to prefer pp-numbers in files preprocessed as
a result of #include directives.
-- Fixed a bug, which prevented to open #include'd files specified by an
+- Fixed a bug, which prevented to open #include'd files specified by an
absolute path.
- Fixed a problem in the expression parser value type.
- Fixed a dynaload compilation problem with VC7.1 of the re2c lexer tests.
Sat Dec 24 13:33:53 CST 2005
- Version 1.2.2
-- Added three new preprocessing hooks: 'found_directive', 'skipped_token' and
- 'evaluated_conditional_expression' (thanks to Andreas Sæbjørnsen for the
+- Added three new preprocessing hooks: 'found_directive', 'skipped_token' and
+ 'evaluated_conditional_expression' (thanks to Andreas Sæbjørnsen for the
suggestions).
- Removed hook forwarding functions in the context_type.
- Added missing include_next case branches for get_directivename() function.
- Added new sample: advanced_hooks.
- Fixed a possible buffer overflow in the cpplexer and cpp exception classes.
- Made the cpp_grammar thread safe.
-- Removed the need for the get_directivename() function. Fixed typos in the
+- Removed the need for the get_directivename() function. Fixed typos in the
predefined token table.
-- Removed assertions from get_token_name() and get_token_value() and replaced
+- Removed assertions from get_token_name() and get_token_value() and replaced
these with more meaningful code.
- Added the BOOST_WAVE_USE_STRICT_LEXER configuration constant which allows to
decide, whether the '$' character will be recognized as a part of identifiers
@@ -564,77 +593,77 @@ Sat Dec 24 13:33:53 CST 2005
preprocessor constant (testwave V0.4.0).
- Made the predefined_macros_grammar thread safe.
- Added dll support for the generated Wave libraries.
-- Added the const_iterator based exlicit instantiations for the Re2C lexer to
+- Added the const_iterator based exlicit instantiations for the Re2C lexer to
the built Wave library and dll.
-- Added the whitespace handling policy to the context object. This actually is
+- Added the whitespace handling policy to the context object. This actually is
no separate policy, it's a new preprocessing hook allowing to decide, whether
a concrete token has to be skipped.
-- Changed the --preserve option of the wave tool to take a single integer
- argument (0: no whitespace is preserved, 1: only comments are preserved,
+- Changed the --preserve option of the wave tool to take a single integer
+ argument (0: no whitespace is preserved, 1: only comments are preserved,
2: all whitespace is preserved)
- Edited the command line option descriptions of the wave driver.
- Fixed broken tags in documentation (magically inserted by DreamWeaver).
-- Merged the new whitespace_handling policy with the existing preprocessing
+- Merged the new whitespace_handling policy with the existing preprocessing
hooks. The name of the new preprocessing hook ist may_skip_whitespace().
- Fixed compatibility issues for CW9.4 in the Wave test aplication.
-- Added get_errorcode() member to the wave exception classes allowing to
+- Added get_errorcode() member to the wave exception classes allowing to
get back the reason for the exception.
- Added boost::wave::is_recoverable(cpp_exception const&) alowing to decide,
whether it is possible to continue after a cpp_exception has been thrown.
This is a temporary hack to overcome the current limitation of the library
not allowing to do generic error recovery. It allows to recover from 75% of
the generated errors types.
-- The --timer command line option for the Wave driver now prints the elapsed
+- The --timer command line option for the Wave driver now prints the elapsed
time correctly even if a preprcessing error occured.
- Fixed an error recovery problem which skipped one token after continuing in
case this was a pp directive.
-- Added the --autooutput (-E) option to the Wave driver applet which redirects
- the generated output to a file named after the input file changing the file
+- Added the --autooutput (-E) option to the Wave driver applet which redirects
+ the generated output to a file named after the input file changing the file
extension to '.i'.
- Changed all throw's to boost::throw_exception.
-- Added the possibility to configure the command keyword for the wave specific
+- Added the possibility to configure the command keyword for the wave specific
#pragma directives. It is now possible to define a string literal via
BOOST_WAVE_PRAGMA_COMMAND, which will be recognized and all corresponding
#pragma's are dispatched to the interpret_pragma() preprocessing hook.
- The default value for BOOST_WAVE_PRAGMA_COMMAND is "wave", just to ensure
+ The default value for BOOST_WAVE_PRAGMA_COMMAND is "wave", just to ensure
complete backward compatibility.
- Added missing #pragma warning(pop) directives.
- Fixed a bug wrt error propagation in the expression parser.
-- Fixed an assertion fired when cpp_token is used to process the quick_start
+- Fixed an assertion fired when cpp_token is used to process the quick_start
sample.
- Fixed a (Windows specific) bug which triggered a boost::file_system exception
under certain conditions.
- Switched to Re2C V0.9.11
- Fixed a problem with the new '-E' (--autooutput) option.
-- Added better error reporting for duplicate macro definitions to the Wave
- tool. Added the macro_handling_exception type containing the corresponding
+- Added better error reporting for duplicate macro definitions to the Wave
+ tool. Added the macro_handling_exception type containing the corresponding
macro name via the new (virtual) get_related_name() function.
- Added the get_severity() function to the exceptions thrown by the Wave
library.
- Extended the copyright notice to include the year 2006.
-
+
Mon Dec 5 22:05:22 CST 2005
Boost V1.33.1
- Version 1.2.1
- Fixed bug reported as Sourceforge bug 1274584.
- Switched to Re2C V0.9.9.
-- Fixed a bug where the 'parameters' and 'definition' parameters to the
+- Fixed a bug where the 'parameters' and 'definition' parameters to the
defined_macro callback of the preprocessing hooks were always empty (thanks
to Stefan Seefeld for reporting).
-- Fixed missing namespace specifiers in token definition macros (thanks to
+- Fixed missing namespace specifiers in token definition macros (thanks to
Jozsef Mihalicza for reporting).
-- Enabled --preserved and --long_long modes by default for the cpp_tokens
+- Enabled --preserved and --long_long modes by default for the cpp_tokens
sample.
- Newline tokens reported a wrong line number (offset by one) when using the
Re2C generated lexer (thanks to Jozsef Mihalicza for pointing this out).
- Changed file positions to carry 'unsigned int' line and column numbers.
-- Fixed tokens of a generated #line directive to carry the correct column
+- Fixed tokens of a generated #line directive to carry the correct column
numbers.
- Tokens now contain the correct filename, line and column numbers even if
a #line directive was encountered.
-- Fixed wrong line numbering in reference comments of the tests t_5_002.cpp and
+- Fixed wrong line numbering in reference comments of the tests t_5_002.cpp and
t_5_035.cpp.
-- Made sure, that preprocessor expression errors get ignored for 'passive'
+- Made sure, that preprocessor expression errors get ignored for 'passive'
#elif branches.
- Fixed an issue reported by the gcc debug stl.
- Added the <vc-7_1-stlport><*><rtti>off directive to all of the V1 Jamfiles.
@@ -668,21 +697,21 @@ Version 1.2
way.
- Added special handling of the eof tokens inside the lexer iterator classes
for Comeau.
-- Applied a workaround proposed by David Abrahams to make the slex lexer work
+- Applied a workaround proposed by David Abrahams to make the slex lexer work
on the CodeWarrior platforms.
-
+
Sun May 8 17:22:59 WEDT 2005
Version 1.1.17
- Added ill_formed_character_literal and ill_formed_integer_literal errors.
- Improved error handling and diagnostics for integer overflow in #if/#elif
expressions.
-- Fixed a bug in the testwave application which prevented the correct
+- Fixed a bug in the testwave application which prevented the correct
recognition of expected errors under certain circumstances.
- Fixed a portability problem (for gcc 3.3.x) in the testwave application.
- Enforced that #if/#endif are balanced file wise.
-- Changed the command line arguments for the Wave testrun to use absolute
+- Changed the command line arguments for the Wave testrun to use absolute
directories.
-- Changed the test application to return a value != zero if one of the given
+- Changed the test application to return a value != zero if one of the given
config files were not found.
- Fixed a command line parsing problem caused by a change in the parameter
handling inside in the program_options library.
@@ -692,7 +721,7 @@ Version 1.1.17
- Added operator==() to the token classes to fix the ambiguity error reported
by the True64 compiler.
- Improved the error message, when empty arguments are used in pure C++ mode.
-- Added character literal out of range testing and an additional corresponding
+- Added character literal out of range testing and an additional corresponding
error message.
- Fixed parsing of long character literals (such as '\x1234').
- Fixed almost all problems diagnosed by the Boost inspection report.
@@ -702,9 +731,9 @@ Version 1.1.17
Thu Apr 7 10:07:45 WEDT 2005
Version 1.1.16
-- Fixed a bug in the white space eating component, which prevented a C++
+- Fixed a bug in the white space eating component, which prevented a C++
comment to be suppressed if it followed after another whitespace.
-- Fixed the inconsistencies between the documentation and the behaviour wrt the
+- Fixed the inconsistencies between the documentation and the behaviour wrt the
different include search paths. See the Wave driver docs for details of how
the '-I', '-I-', and '-S' options work.
- Allowed to specify more than one config file ('@' syntax) on the command line
@@ -714,13 +743,13 @@ Version 1.1.16
- If comments shouldn't be preserved all C++ comments are replaced by newline
tokens (instead of beeing igored completely).
- Fixed a bug in the white space eater component.
-- Fixed a bug which reported wrong line numbers for error encountered during
+- Fixed a bug which reported wrong line numbers for error encountered during
retokenisation (concatination).
- Fixed a bug in the unescaping code.
-- Fixed a compilation error of the testwave executable (added a missing
+- Fixed a compilation error of the testwave executable (added a missing
namespace specifier).
- Added a missing header to make cpp.re.cpp compile on CW.
-- The predefined macro __BASE_FILE__ now returns a properly escaped file name
+- The predefined macro __BASE_FILE__ now returns a properly escaped file name
string.
- Fixed the function boost::wave::util::impl::unescape_lit().
- Added the Wave unit test framework. For now it contains about 60 unit tests
@@ -730,28 +759,28 @@ Version 1.1.16
- Fixed a minor problem in the whitespace eating component.
- Added optional trigraph conversion.
- Changed all size_t, time_t etc. to std::size_t, std::time_t etc (for CW).
-- If the comments should not be preserved every C comment containing at minimum
+- If the comments should not be preserved every C comment containing at minimum
one newline is now converted to a newline token.
- Added the lexed_tokens sample.
- Fixed warnings and errors reported by the CodeWarrior compiler.
-- Added the '$V' replacement string to the testwave application. It expands to
+- Added the '$V' replacement string to the testwave application. It expands to
the current BOOST_LIB_VERSION.
- Diagnosed the attempt to redefine the alternative operators as and, or etc.
- Improved error handling.
-- Disabled the flex_string class for VC7, enabled to fallback to std::string
+- Disabled the flex_string class for VC7, enabled to fallback to std::string
for this compiler.
- Renamed files to comply with the Boost rules.
- Added the first part of the MCPP validation suite to the Wave unit tests.
- Added even more missing "using namespace std;" statements for functions from
the C runtime library. The Wave test suite now contains more than 100 unit
tests.
-- Added the $P/$P(basename) replacement string to the testwave application
- which expands to the full path of the current file ($P) or to the current
+- Added the $P/$P(basename) replacement string to the testwave application
+ which expands to the full path of the current file ($P) or to the current
directory/basename ($P(basename)).
- Fixed a bunch of portability problmes revealed by the regression tests on
different platforms. Thanks to Stefan Slapeda for his support to make it work
on the cw-9_4 toolset (win32).
-
+
Tue Mar 22 14:52:45 WEST 2005
Version 1.1.15
- Fixed a bug where the complete set of C99 predefined macros were pre-defined
@@ -761,25 +790,25 @@ Version 1.1.15
- Added the --listincludes option to the Wave driver executable which allows to
log the file names of the include files opened.
- Fixed a gcc warning in token_cache.hpp (unused variable end).
-- Changed the logic behind #include_next. It now starts searching with the
- next directory after the directory the current file (the file containing the
+- Changed the logic behind #include_next. It now starts searching with the
+ next directory after the directory the current file (the file containing the
#include_next directive) is located in.
-- Changed the signature of the undefined_macro preprocessing hook to take the
+- Changed the signature of the undefined_macro preprocessing hook to take the
token itself and not the macro name only. This is important to pass the full
- context information about the position of the #undef directive to the
+ context information about the position of the #undef directive to the
user provided hook (thanks to Stefan Seefeld for pointing that out).
- Fixed several broken links in the Context Policy topic.
-- Fixed a bug in the handling of the #include_next directive inside of
+- Fixed a bug in the handling of the #include_next directive inside of
non-evaluated #if blocks.
- Fixed a bug in the #include_next handling code (thanks to Stefan Seefeld).
-- Changed the signature of the opened_include_file() preprocessing hook which
+- Changed the signature of the opened_include_file() preprocessing hook which
now receives not only the absolute file name of the openend include file but
additionally gets passed the (possibly) relative path of the openend include
file. This concrete format of the relative path depends on the format of the
include search directory given to the library.
- Added a new preprocessing hook 'found_include_directive()' which gets called
- for every #include directive (even for those where the file to include
- doesn't exist) and which gets passed the (expanded) token sequence found
+ for every #include directive (even for those where the file to include
+ doesn't exist) and which gets passed the (expanded) token sequence found
after the #include directive token.
- The file names passed to the preprocessing hooks are now normalised.
- Changed the opened_include_file() preprocessing hook to receive the correct
@@ -789,25 +818,25 @@ Version 1.1.15
- Fixed a bug which prevented to define variadic macros from the command line.
- Added a 'preserve comments' mode to preserve the comments in the input stream
not inserted into macro definitions.
-- Added a new --preserve (-p) command line switch to the wave driver
+- Added a new --preserve (-p) command line switch to the wave driver
application to allow comments to be preserved in the generated output stream.
-
+
Mon Feb 21 09:30:04 WEST 2005
Version 1.1.14 (Fixes in response to the Boost review)
-Wave was accepted into Boost!
+Wave was accepted into Boost!
With special thanks to Tom Brinkman, who volunteered to be the review manager.
-With thanks to David Abrahams, Beman Dewes, Reece Dunn, Larry Evans,
-Doug Gregor, Joel de Guzman, Baptiste Lepilleur, Andy Little, Paul Mensonides,
-Dan Nuffer, Andreas Pokorny, Vladimir Prus, Gennadiy Rozental, Michiel Salters,
-Jonathan Turkanis, Chris Uzdavinis, Pavel Vozenilek, Michael Walter for bug
+With thanks to David Abrahams, Beman Dewes, Reece Dunn, Larry Evans,
+Doug Gregor, Joel de Guzman, Baptiste Lepilleur, Andy Little, Paul Mensonides,
+Dan Nuffer, Andreas Pokorny, Vladimir Prus, Gennadiy Rozental, Michiel Salters,
+Jonathan Turkanis, Chris Uzdavinis, Pavel Vozenilek, Michael Walter for bug
reports, fixes and hints.
- Added support for the MS extensions #region and #endregion, which simply get
ignored by Wave. The support for these is enabled only, when the pp constant
- BOOST_WAVE_SUPPORT_MS_EXTENSIONS is defined. Otherwise these get flagged as
+ BOOST_WAVE_SUPPORT_MS_EXTENSIONS is defined. Otherwise these get flagged as
an illegal preprocessor directive (as before).
- Fixed a problem, where the replacement text for a #pragma directive got lost
if this directive was on the last line of a processed (include-)file.
@@ -817,39 +846,39 @@ reports, fixes and hints.
- Fixed certain grammatical and stylistic quirks in the documentation.
- Fixed a problem in libs/wave/build/Jamfile.v2 (as reported by Larry Evans).
Fixed the Jamfile.v2 in the samples directories accordingly.
-- Added the '<toolset>vc-7_1:<rtti>off' to all Jamfile.v2 files to adjust for
- the internal buffer overflow bug in the VC7.1 compiler (reported by Joel de
+- Added the '<toolset>vc-7_1:<rtti>off' to all Jamfile.v2 files to adjust for
+ the internal buffer overflow bug in the VC7.1 compiler (reported by Joel de
Guzman).
- Changed the '<toolset>vc-7_1:<rtti>off' to '<toolset>vc-7.1:<rtti>off' as
required by the Boost.Build.v2 library (suggested by Vladimir Prus).
- Finally fixed the Jamfile.v2 file (after a suggestion from Reece Dunn)
-- Fixed the column number reported for tokens for Slex lexer based
+- Fixed the column number reported for tokens for Slex lexer based
configurations (reported by Baptiste Lepilleur).
-- Added the __BASE_FILE__ predefined macro, which contains a string literal
+- Added the __BASE_FILE__ predefined macro, which contains a string literal
of the main file name to preprocess (the one the context<> template was
created with). (suggested by Pavel Vozenilek)
- Used the boost::reverse_iterator instead of the std::reverse_iterator
for the flex_string class to allow compilation of Wave with VC7.0
(as suggested by Reece Dunn).
-- Fixed a problem in the include_path template, which throwed a
+- Fixed a problem in the include_path template, which throwed a
boost::filesystem exception whenever a character was used in a file name
to include, which is marked as illegal by the default name checker of the
boost::filesystem::path.
-
+
Version 1.1.13 (Boost review candidate 2, bug fixed version)
- Fixed a problem, where the context<> template referenced temporary iterator
objects from the underlying stream (thanks to Michiel Salters for reporting
this).
-- Fixed a bug in the re2c lexer, which allowed to dereference the end iterator
+- Fixed a bug in the re2c lexer, which allowed to dereference the end iterator
of the underlying input stream (thanks to Doug Gregor for pointing this out).
- Fixed several assertions fired by the iterator checking code of the VC8 stl.
Version 1.1.12 (Boost review candidate)
-- A rough performance analysis showed, that 30% of the time is spent parsing
+- A rough performance analysis showed, that 30% of the time is spent parsing
the input for pp directives (cpp_grammar), 35% of the time is spent inside
- the flex_string code, mainly in the copy constructor and assignment
- operator, 15% of the time is spent inside the list and vector member
- functions, 10% is spent for memory allocation but only 1% of the time is
+ the flex_string code, mainly in the copy constructor and assignment
+ operator, 15% of the time is spent inside the list and vector member
+ functions, 10% is spent for memory allocation but only 1% of the time is
spent in the re2c lexer.
- Identified a performance problem, where the token_cache was instantiated
for every created lexer object, but needed to be initialised only once.
@@ -860,27 +889,27 @@ Version 1.1.12 (Boost review candidate)
Version 1.1.11
- Updated copyrights.
- Fixed some bugs introduced by the latest refactoring.
-- Tried to fix the expansion of macros, which replacement-list terminates in a
+- Tried to fix the expansion of macros, which replacement-list terminates in a
partial macro expansion. No success so far.
Version 1.1.10
-- Refactored some of the macro map (macro namespace) code (added comments,
+- Refactored some of the macro map (macro namespace) code (added comments,
splitted into separate files),
- Fixed some typename errors in cpp_macromap.hpp (thanks to Vladimir Prus).
- Fixed the BoostBuild V2 Jamfiles (thanks to Vladimir Prus).
Version 1.1.9
-- Moved all of the #pragma wave option(value) operators out of the wavelib into
+- Moved all of the #pragma wave option(value) operators out of the wavelib into
the wave driver program. Removed enable_trace() and trace_flags() policy
functions. Renamed trace_policy into context_policy.
- Added the defined_macro() and undefined_macro() preprocessing hooks to allow
easily to build macro cross referencers and such.
Version 1.1.8
-- Replaced the usage of the string::erase() and string::insert() functions,
+- Replaced the usage of the string::erase() and string::insert() functions,
which were the only non-const string member functions used.
- Token pasting is now well defined in variadics mode (was in C++0x mode only).
-- Changed the timing code in the wave driver to include the parsing of
+- Changed the timing code in the wave driver to include the parsing of
files included by the --forceinclude command line switch.
- Performance measurements (very informal) [sec], the files are some of the
preprocessor specific test cases from Paul Mensonides chaos_pp library.
@@ -903,7 +932,7 @@ Version 1.1.8
selection.cpp 0.440 0.270 0.210 0.220
slot.cpp 0.680 0.350 0.240 0.270
tuple.cpp 0.420 0.240 0.190 0.210
-
+
Wed Aug 25 13:23:27 WEDT 2004
Version 1.1.7
@@ -911,12 +940,12 @@ Version 1.1.7
- Removed several features from the code base:
. removed C++0x support
. removed TST support
-- Fixed the program_option validator syntax, which has changed since the last
+- Fixed the program_option validator syntax, which has changed since the last
update.
-- Removed misleading configuration options from the cpp_config.hpp file,
+- Removed misleading configuration options from the cpp_config.hpp file,
because the application will have to use the same config options as were used
during the compilation of the library.
-- Changed the naming convention of typedef'd types in the library. Removed the
+- Changed the naming convention of typedef'd types in the library. Removed the
_t suffix, wherever possible.
- Updated the documentation to reflect the removal of the C++0x features.
@@ -931,50 +960,50 @@ Version 1.1.6
Version 1.1.5
Version 1.0.6
-- Fixed a bug, which reported an #include statement as ill formed, if it was
- followed by an empty C comment only. This was an error in the cpp.re regular
- expression for C comments. Additionally, since this change simplified the
- Re2C generated lexer a lot it was possible to remove the compiler workaround
+- Fixed a bug, which reported an #include statement as ill formed, if it was
+ followed by an empty C comment only. This was an error in the cpp.re regular
+ expression for C comments. Additionally, since this change simplified the
+ Re2C generated lexer a lot it was possible to remove the compiler workaround
for the VC7.1 compiler which prevented the optimization of this lexer.
-
+
Mon Mar 29 09:36:59 WEDT 2004
- Corrected the signature of the main() functions (was main(int, char const*[])).
Sun Mar 28 12:55:59 WEDT 2004
Version 1.1.4
-- Fixed a problem, where the first returned token was lost, whenever a
+- Fixed a problem, where the first returned token was lost, whenever a
--forceinclude file was given.
-- Adjusted the Wave driver and the other samples to use the new program_options
+- Adjusted the Wave driver and the other samples to use the new program_options
library syntax (V1.1.x only).
-
+
Mon Mar 1 19:14:21 WEST 2004
Version 1.1.2
Version 1.0.4
-- Fixed a problem, which does not report an error, if in a #define statement in
+- Fixed a problem, which does not report an error, if in a #define statement in
between a macro name and its replacement list were no whitespace given.
-- Fixed a bug, which generated an unexpected exception of the $ character in the
+- Fixed a bug, which generated an unexpected exception of the $ character in the
input.
-- Macro definitions, which differ by whitespace only (one definition contains
- whitespace at a certain position, the other definition does not) are correctly
+- Macro definitions, which differ by whitespace only (one definition contains
+ whitespace at a certain position, the other definition does not) are correctly
reported as a warning now.
-- Fixed a problem, where different formal argument names during macro
+- Fixed a problem, where different formal argument names during macro
redefinition were not flagged as a warning.
-- A wide character string used in a #line directive wasn't flagged as an error.
-
+- A wide character string used in a #line directive wasn't flagged as an error.
+
Sun Feb 29 19:10:14 WEST 2004
Used the test suite distributed with the mcpp V2.4 preprocessor to fix a bunch
of mostly minor issues:
-- Fixed trigraph backslash followed by a newline handling (??/ \n) in the
+- Fixed trigraph backslash followed by a newline handling (??/ \n) in the
re2c (C/C++ and IDL) scanners.
- Fixed a digraph/trigraph token type handling problem during macro expansion.
-- Fixed a digraph/trigraph token type problem during handling of the null
+- Fixed a digraph/trigraph token type problem during handling of the null
preprocessor directive.
- Fixed several signed/unsigned conversion bugs in the expression evaluator.
- Fixed the || and && operators in the expression evaluator to stop evaluation,
as only the outcome of the overall expression is determined.
- Fixed the expression evaluation engine to detect divide by zero errors.
- Fixed a bug with operator || and && arithmetic (the deduced type was wrong).
-- Fixed a bug with the unary operators ! and - which IN conjunction with an
+- Fixed a bug with the unary operators ! and - which IN conjunction with an
arithmetic operation yielded A wrong result type.
- Fixed a bug, which reported a macro definition as an invalid redefinition, if
it was different from the original definition only by different whitespaces.
@@ -988,35 +1017,35 @@ of mostly minor issues:
- Fixed some spelling errors in the documentation (thanks to Rob Stewart).
Tue Feb 3 20:20:16 WEST 2004
-- Fixed the problem, that macro definitions in a config file were flagged as
+- Fixed the problem, that macro definitions in a config file were flagged as
an error, if there was any whitespace in between the -D and the macro name
(same problem existed for -P).
-
+
Fri Jan 30 20:28:27 WEST 2004
- Fixed a missing boostification in the trace support header.
-- Added a missing std:: namespace qualification to the list_includes.cpp sample
+- Added a missing std:: namespace qualification to the list_includes.cpp sample
file.
- Fixed line ending problems with the cpp.re and idl.re files.
- Added quick_start sample.
Sun Jan 25 20:26:45 WEST 2004
This version was submitted to Boost as the review candidate (V1.1.0)
-- Fixed invalid explicit instantiation syntax as reported by the Comeau
+- Fixed invalid explicit instantiation syntax as reported by the Comeau
compiler.
- Added a missing header to flex_string.hpp.
Sat Jan 24 19:47:44 WEST 2004
- Completely decoupled the used lexer from the preprocessor.
-- Unfortunately had to change the template interface of the context class. It
+- Unfortunately had to change the template interface of the context class. It
now instead of the token type takes the type of the lexer to use.
-- Reintroduced the cpp_tokens, list_includes and waveidl samples.
+- Reintroduced the cpp_tokens, list_includes and waveidl samples.
. cpp_tokens is based on the SLex lexer
. list_includes shows the usage of the include file tracing capability
. waveidl uses the Re2C based IDL lexer in conjunction with the default token
type
-
+
Tue Jan 13 20:43:04 WEST 2004
-- Fixed several compilation issues under linux (gcc 3.2.3, gcc 3.3, gcc 3.3.2,
+- Fixed several compilation issues under linux (gcc 3.2.3, gcc 3.3, gcc 3.3.2,
gcc 3.4, Intel V7.1)
- Fixed a compatibility problem with Spirit versions older than V1.7.
@@ -1025,38 +1054,38 @@ Mon Jan 12 20:39:50 WEST 2004
. Moved code into namespace boost.
. Prefixed all pp constants with "BOOST_".
. Refactured the directory structure.
-- Removed IDL mode and SLex lexer from the code base. These will be re-added as
+- Removed IDL mode and SLex lexer from the code base. These will be re-added as
samples.
-- Changed the Wave configuration system to be more flexible (all
+- Changed the Wave configuration system to be more flexible (all
#if defined(BOOST_WAVE_...) changed to #if BOOST_WAVE_... != 0),
which allows to configure the library without changing the code base itself
-
+
Sat Jan 10 18:17:50 WEST 2004
-- Incorporated Andrei Alexandrescu's latest changes to the flex_string class,
+- Incorporated Andrei Alexandrescu's latest changes to the flex_string class,
which resulted in an overall spedd gain of about 5-10%.
-
+
Wed Jan 7 17:46:45 WEST 2004
- Found a major performance hole! The achieved general speedup is about 50-70%.
-- Added missing old MS specific extensions to the re2c lexer (_based,
+- Added missing old MS specific extensions to the re2c lexer (_based,
_declspec, _cdecl, _fastcall, _stdcall, _inline and _asm).
- Added support for #include_next (as implemented by gcc).
- Fixed compilation problems with gcc 3.3.1
- Avoid to look up in symbol table of a potential macro name twice.
-- Added the Spirit SLex lexer sample to the Wave source tree, because it was
+- Added the Spirit SLex lexer sample to the Wave source tree, because it was
removed from the Spirit distribution.
-- Removed the configuration option, which allowed to reverse the names stored
+- Removed the configuration option, which allowed to reverse the names stored
in the symbol tables.
- Implemented experimental support for using a TST (ternary search tree) as the
container for the symbol tables.
-
+
Sun Jan 5 12:30:50 2004
- Released V1.0.0
Sun Jan 4 00:11:50 2004
- Removed tabs from the flex_string.hpp file.
-- Modified the input_functor.hpp file to sqeeze out some milliseconds at
+- Modified the input_functor.hpp file to sqeeze out some milliseconds at
runtime.
-- The --timer option now prints the overall elapsed time even if an error
+- The --timer option now prints the overall elapsed time even if an error
occured.
- Added support for #pragma once.
@@ -1066,11 +1095,11 @@ Fri Jan 2 22:58:54 2004
Thu Jan 1 21:15:03 2004
- Fixed a bug while predefining a macro with a value through the commmand line.
-- Fixed a bug, which reported a macro definition as illegal, if the redefined
+- Fixed a bug, which reported a macro definition as illegal, if the redefined
macro was a function like macro with parameters.
-- Fixed a bug, if concatenation of two tokens resulted in a C++ comment start
+- Fixed a bug, if concatenation of two tokens resulted in a C++ comment start
token.
-
+
Thu Jan 1 15:01:54 2004
- Finished license migration.
@@ -1078,7 +1107,7 @@ Wed Dec 31 12:23:55 2003
- Changed the copyright and licensing policiy to be Boost compatible.
Wed Dec 31 12:01:14 2003
-- Fixed a problem while compiling certain headers from the Microsoft Windows
+- Fixed a problem while compiling certain headers from the Microsoft Windows
SDK:
#define CreateWindowA(lpClassName, lpWindowName, dwStyle, x, y,\
nWidth, nHeight, hWndParent, hMenu, hInstance, lpParam)\
@@ -1088,25 +1117,25 @@ Wed Dec 31 12:01:14 2003
replacement list.
- Fixed a problem with the MS extension __declspec, which now is recognized
correctly.
-
+
Sat Dec 27 14:48:29 2003
- Fixed remaining problems with assign/assign_a.
- Fixed some gcc warnings about signed/unsigned comparision mismatch.
Tue Nov 11 20:51:41 WEST 2003
-- Changed the IDL mode to recognize identifiers only. All keywords (except
- 'true' and 'false') are returned as identifiers. This allows for easy
- extension of the IDL language. The drawback is, that after preprocessing
+- Changed the IDL mode to recognize identifiers only. All keywords (except
+ 'true' and 'false') are returned as identifiers. This allows for easy
+ extension of the IDL language. The drawback is, that after preprocessing
there needs to be just another lexing stage, which recognizes the keywords.
-- Fixed a possible problem, when in between a #if/#elif directive and a
+- Fixed a possible problem, when in between a #if/#elif directive and a
subsequent opening parenthesis Wave finds no whitespace:
#if(_WIN_VER >= 0x0500)
- is now recognized correctly.
+ is now recognized correctly.
(This problem was pointed out by Porter Schermerhorn).
-
+
Sun Nov 9 21:05:23 WEST 2003
- Started to work on implementation of an IDL lexer for the TAO idl compiler.
- . Branched off the Re2C C++ lexer and related files as a starting point for
+ . Branched off the Re2C C++ lexer and related files as a starting point for
the new IDL lexer. Added connfiguration means to allow compile time
decision, in which mode to operatoe (C++ or IDL).
. Implemented the Re2C based IDL lexing component.
@@ -1118,22 +1147,22 @@ Sat Nov 8 20:05:52 WEST 2003
- Adjusted for the new actor names in Spirit (assign_a and append_a).
Thu Aug 21 16:54:20 2003
-- Removed the internally used macro 'countof()' to avoid possible nameclashes
+- Removed the internally used macro 'countof()' to avoid possible nameclashes
with user code.
- Fixed a bug, which prevented the execution of the concatination operator '##'
while expanding object-like macros.
-
+
Tue Aug 5 10:04:00 2003
-- Fixed a false assertion, if a #pragma directive started with some whitespace
+- Fixed a false assertion, if a #pragma directive started with some whitespace
on the line.
-- Added the #pragma wave timer() directive to allow rough timings during
- processing. This is done on top of a new callback hook for unrecognized
- #pragma's, which allows to easily add new pragma commands without changing
+- Added the #pragma wave timer() directive to allow rough timings during
+ processing. This is done on top of a new callback hook for unrecognized
+ #pragma's, which allows to easily add new pragma commands without changing
the Wave library.
-- Fixed a bug in the whitespace insertion engine, which prevented the insertion
- of a whitespace token in between two consecutive identifier tokens or a
+- Fixed a bug in the whitespace insertion engine, which prevented the insertion
+ of a whitespace token in between two consecutive identifier tokens or a
integer literal token followed by an identifier token.
-- Fixed a bug during macro concatenation, which allowed to concatenate
+- Fixed a bug during macro concatenation, which allowed to concatenate
unrelated tokens from the input stream:
#define CAT(a, b) PRIMITIVE_CAT(a, b)
#define PRIMITIVE_CAT(a, b) a ## b
@@ -1151,37 +1180,37 @@ Sun Jun 29 12:35:00 2003
- Fixed 64 bit compatibility warnings.
- Fixed a bug, which prevented the correct recognition of a #line directive, if
only the filename part of this directive was generated by a macro expansion.
-- Fixed a bug during macro expansion of conditional expressions, which
+- Fixed a bug during macro expansion of conditional expressions, which
prevented the correct expansion of certain scoped macros.
-
+
Fri Jun 27 09:50:14 2003
- Changed the output of the overall elapsed time (option --timer) to cerr.
- Added a configuration constant WAVE_REVERSE_MACRONAMES_FOR_SYMBOLTABLE, which
- reverses the macro names while storing them into the symbol table, which
+ reverses the macro names while storing them into the symbol table, which
allows to speed up name lookup especially, if the macro names are very long
and if these share a common prefix.
- Fixed a very subtle bug, which prevented the recognition of fully qualified
- macro names during the macro expansion of conditionals expressions (for
+ macro names during the macro expansion of conditionals expressions (for
#if/#elif).
- Improved the error output for the illformed pp expression error.
-
+
Thu Jun 26 08:20:30 2003
- Done a complete spell check of the source code comments.
Wed Jun 25 20:33:52 2003
-- Changed the conditional expression engine to work with integer numeric
+- Changed the conditional expression engine to work with integer numeric
literals only. Distinguished signed and unsigned literals.
- Importing a region twice is allowed now.
-- Fixed a bug, which does not removed all placeholder tokens from a expanded
+- Fixed a bug, which does not removed all placeholder tokens from a expanded
token sequence while evaluating conditional expressions (C++0x mode only).
Wed Jun 25 15:01:51 2003
-- Changed the conditional expression engine to respect the type of numeric
+- Changed the conditional expression engine to respect the type of numeric
literals, now expressions like '#if 1 / 10 == 0' evaluate correctly (to true
:-)
-- Fixed a bug, where macro names referring to global macros (as ::A::B) were
+- Fixed a bug, where macro names referring to global macros (as ::A::B) were
not correctly recognized under certain circumstances.
-- Empty parameter lists for macros with ellipses only sometimes generated a
+- Empty parameter lists for macros with ellipses only sometimes generated a
placemarker token in the output:
#define STR(...) #__VA_ARGS__
STR() // resulted in "§" instead of "" .
@@ -1192,20 +1221,20 @@ Wed Jun 25 08:35:06 2003
- Reformatted the --timer output from pure seconds to a more reasonable format.
Fri Jun 20 19:33:30 2003
-- Changed the enable_tracing function of the tracing_policies to take a
+- Changed the enable_tracing function of the tracing_policies to take a
trace_flags variable instead of a bool, to allow to control tracing with more
granulation.
-- Added the tracing_enabled function to the tracing_policies, which returns the
+- Added the tracing_enabled function to the tracing_policies, which returns the
current tracing status.
- Updated the documentation of the tracing policies.
Thu Jun 19 21:45:39 2003
-- Reactivated the list_includes sample with the help of the new include file
+- Reactivated the list_includes sample with the help of the new include file
tracing facility.
Thu Jun 19 17:55:35 2003
- Eliminated the TraceT template parameter from the macromap<> template.
-- Added two hooks to the trace policy to allow to trace the opening and
+- Added two hooks to the trace policy to allow to trace the opening and
closing of include files.
Thu Jun 19 14:08:10 2003
@@ -1213,24 +1242,24 @@ Thu Jun 19 14:08:10 2003
of the overall elapsed time during the preprocessing of the given file.
Fri Jun 13 09:11:29 2003
-- Emitted an error message, if an ellipses was found as a formal macro
+- Emitted an error message, if an ellipses was found as a formal macro
parameter and variadics were disabled.
-- Fixed a false error message, that the last line was not terminated with a
+- Fixed a false error message, that the last line was not terminated with a
newline, which occured, if no output was generated by the last line of the
source file.
-
+
Thu Jun 12 15:20:22 2003
-- Fixed the recent change in argument expansion for the variadics/C99/C++0x
+- Fixed the recent change in argument expansion for the variadics/C99/C++0x
mode.
-- Fixed a problem, where an additional whitespace between _Pragma and the
+- Fixed a problem, where an additional whitespace between _Pragma and the
opening parenthesis resulted in a false error message.
- Used a pool allocator for the token sequence containers (std::list<>'s),
- which gives a speed gain of more than 60% (while profiling the Order
+ which gives a speed gain of more than 60% (while profiling the Order
library).
-
+
Wed Jun 11 22:18:54 2003
- Fixed a macro scoping/expansion problem, when a macro returned a full scope
- which is continued on the call site to form a full qualified name, the name
+ which is continued on the call site to form a full qualified name, the name
wasn't recognized correctly:
# region A
# define MACRO 1
@@ -1241,22 +1270,22 @@ Wed Jun 11 22:18:54 2003
# define ID(x) x
ID(A)::MACRO // 1
ID(A::B)::MACRO // 2, was expanded to A::B::MACRO
-- Changed the expansion of macro arguments such, that these will be expanded
+- Changed the expansion of macro arguments such, that these will be expanded
only, if the result is to be used for substitution during the expansion
of the replacement list.
-
+
Wed Jun 11 14:40:29 2003
-- Included a whitespace eating finite state machine (FSM) for minimal
+- Included a whitespace eating finite state machine (FSM) for minimal
whitespace in the generated output. This was suggested by Paul Mensonides.
- Updated the acknowledgement section
Wed Jun 4 08:03:04 2003
-- Fixed a bug reported by Faisal Vali, which prevented the correct evaluation
- of conditional expressions, if these referenced macro names, which expanded
+- Fixed a bug reported by Faisal Vali, which prevented the correct evaluation
+ of conditional expressions, if these referenced macro names, which expanded
to a sequence containing non-expandable tokens.
-- Fixed the above bug for #elif directives too (in the first place this was
+- Fixed the above bug for #elif directives too (in the first place this was
fixed for #if directives only)
-
+
Mon May 26 22:15:40 2003
- Added missing copyrights in several files.
- Fixed false output, if a unknown _Pragma were encountered.
@@ -1267,11 +1296,11 @@ Mon May 26 22:15:40 2003
# define TEST 1
#endregion
ID(SCOPE::) TEST // should expand to 1
-- Changed #import semantics for macros from copy semantics to reference
- semantics, i.e. macros are now considered to be implicitly imported into the
- scope, where they are defined. If a macro is imported into another scope and
- the original macro is undefined, the imported macro still exists. Further,
- if the imported macro is expanded, then while rescanning the original macro
+- Changed #import semantics for macros from copy semantics to reference
+ semantics, i.e. macros are now considered to be implicitly imported into the
+ scope, where they are defined. If a macro is imported into another scope and
+ the original macro is undefined, the imported macro still exists. Further,
+ if the imported macro is expanded, then while rescanning the original macro
is disabled too:
#region A
# define B(x) x
@@ -1281,31 +1310,31 @@ Mon May 26 22:15:40 2003
A::B (B) (*) // B(*)
B (B) (*) // B(*)
A::B (A::B) (*) // A::B(*)
-- Fixed a recently introduced problem, where placemarker tokens slipped through
+- Fixed a recently introduced problem, where placemarker tokens slipped through
to the output under certain conditions (in variadics/C99/C++0x modes only).
Mon May 19 16:30:49 2003
-- Fixed a bug, which prevented the recognition of the __lparen__, __rparen__ or
+- Fixed a bug, which prevented the recognition of the __lparen__, __rparen__ or
__comma__ alternative tokens, if these were the first token after an emitted
#line directive (reported by Vesa Karvonen).
-- Added an optimization, that only those tokens are considered for a macro
+- Added an optimization, that only those tokens are considered for a macro
expansion, which may result in an expansion.
-
+
Tue May 13 18:16:26 2003
-- Fixed a newly introduced problem, where a omitted argument consisting out
- of whitespace only were failed to be replaced by a placemarker token. This
+- Fixed a newly introduced problem, where a omitted argument consisting out
+ of whitespace only were failed to be replaced by a placemarker token. This
lead to problems with constructs like the following:
#define paste(a, b, c) a ## b ## c
paste(1, , 3) // should expand to 13, but expanded to 1## 3
-- Fixed a problem with the tracing support, which throwed an unexpected
+- Fixed a problem with the tracing support, which throwed an unexpected
exception if there were too few arguments given while expanding a macro.
-- Allowed to open and to import the global scope ('#region ::' and
+- Allowed to open and to import the global scope ('#region ::' and
'#import ::').
-- Fixed a bug, if more than one file was given with a --forceinclude command
+- Fixed a bug, if more than one file was given with a --forceinclude command
line option.
Sat May 10 21:30:29 2003
-- Added __STDC_FULL_REGION__ and __STDC_CURRENT_REGION__ to the list of not
+- Added __STDC_FULL_REGION__ and __STDC_CURRENT_REGION__ to the list of not
undefinable macros.
- In normal C++ mode and C99 mode the #ifdef/#ifndef and the operator defined()
should not support qualified names. This is fixed now.
@@ -1313,53 +1342,53 @@ Sat May 10 21:30:29 2003
- Fixed minor gcc -Wall compilation warnings.
- Added better error support for qualified names used as arguments for #ifdef,
#ifndef and operator defined().
-
+
Sat May 10 09:51:18 2003
- Removed the feature, that the comma before the ellipsis parameter in a macro
definition may be omitted.
-- Resolved an issue with the expansion of qualified macros, when these
+- Resolved an issue with the expansion of qualified macros, when these
qualified names were partially generated by a previous macro expansion
- Allowed to specify fully qualified names as arguments to the #region directive
-
+
Wed May 7 22:44:21 2003
-- Changed the names of __SCOPE__ and __FULL_SCOPE__ predefined macros to
- __STDC_CURRENT_REGION__ and __STDC_FULL_REGION__ resp. The names are subject
+- Changed the names of __SCOPE__ and __FULL_SCOPE__ predefined macros to
+ __STDC_CURRENT_REGION__ and __STDC_FULL_REGION__ resp. The names are subject
to change if the #region keyword actually will be renamed to #scope/#module
or whatever.
- In C++0x mode it is now possible to omit the last comma before a variadics
ellipsis in a macro definition:
- #define cat_i(a, b, c, d, e ...) a ## b ## c ## d ## e
+ #define cat_i(a, b, c, d, e ...) a ## b ## c ## d ## e
- Fixed a bug in the stringize code, where an ellipsis to stringize resulted in
- stringizing of the first ellipsis parameter only. Preserved the original
+ stringizing of the first ellipsis parameter only. Preserved the original
whitespace delimiting in between the ellipsis arguments.
-- Introduced the wave::language_support enum for convenient switching of the
+- Introduced the wave::language_support enum for convenient switching of the
supported language features throughout the library.
-- Fixed a bug, which prevented the definition of the predefined macro
+- Fixed a bug, which prevented the definition of the predefined macro
__WAVE_HAS_VARRIADICS__, if --variadics were given on the command line.
-
+
Tue May 6 15:49:45 2003
- Made predefined macros available at every macro scope without qualification.
-- Predefined a new macro in C++0x mode: __STDC_GLOBAL__, which is defined at
+- Predefined a new macro in C++0x mode: __STDC_GLOBAL__, which is defined at
global macro scope only and equals to '1' (integer literal).
-- In C++0x mode there are two new predefined macros:
- __SCOPE__: expands to the last part of the qualified name of the
+- In C++0x mode there are two new predefined macros:
+ __SCOPE__: expands to the last part of the qualified name of the
current macro scope
- __FULL_SCOPE__: expands to the full qualified name of the current macro
- scope
-
+ __FULL_SCOPE__: expands to the full qualified name of the current macro
+ scope
+
Mon May 5 23:02:48 2003
- Fixed a problem in the new well defined token pasting code, which occured for
constructs like the following:
#define is_empty(...) is_empty_ ## __VA_ARGS__ ## _other
i.e. where two or more '##' operators were contained in the replacement text.
-- Implemented __comma__, __lparen__ and __rparen__ alternative pp-tokens, which
- may be used as the ',', '(' and ')' tokens during preprocessing. These are
- only converted to there respective string representation in a special
+- Implemented __comma__, __lparen__ and __rparen__ alternative pp-tokens, which
+ may be used as the ',', '(' and ')' tokens during preprocessing. These are
+ only converted to there respective string representation in a special
translation phase after preprocessing. This was proposed by Vesa Karvonen.
-- Changed the macro scoping rules to: "If a qualified name does not find a
- nested name, it is not a qualified name to the preprocessor." This seems to
+- Changed the macro scoping rules to: "If a qualified name does not find a
+ nested name, it is not a qualified name to the preprocessor." This seems to
be the simplest usable solution for the possible ambiguities.
-- Fixed a bug in the macro expansion engine in C++0x mode, where the skipping
+- Fixed a bug in the macro expansion engine in C++0x mode, where the skipping
of whitespace inside of a qualified name wasn't consistent.
Sun May 4 10:48:53 2003
@@ -1373,14 +1402,14 @@ Sun May 4 10:48:53 2003
only (just as for the explicit instantiations of the other grammars).
Fri May 2 22:44:27 2003
-- Qualified names are now allowed as parameters to the operator defined() in
+- Qualified names are now allowed as parameters to the operator defined() in
C++0x mode.
-- Separated the defined() functionality into a separate translation unit to
+- Separated the defined() functionality into a separate translation unit to
work around a VC7.1 ICE.
-
+
Fri May 2 15:38:26 2003
- The C++0x mode now has a special set of predefined macros.
-- The predefined macro __WAVE_HAS_VARIADICS__ is now defined in C99 and C++0x
+- The predefined macro __WAVE_HAS_VARIADICS__ is now defined in C99 and C++0x
modes too (--variadics is implied for these modes).
- Updated the documentation to reflect the recent changes and additions.
- In C++0x mode Wave now supports macro scopes:
@@ -1393,26 +1422,26 @@ Fri May 2 15:38:26 2003
- Fixed an issue with well defined token pasting of unrelated tokens.
Tue Apr 29 08:47:37 2003
-- Fixed a bug in the macro expansion engine, which prevented the expansion
- of a certain macro under specific conditions (if the left of two tokens to
- concatenate were a disabled one (T_NONREPLACABLE_IDENTIFIER), then the
+- Fixed a bug in the macro expansion engine, which prevented the expansion
+ of a certain macro under specific conditions (if the left of two tokens to
+ concatenate were a disabled one (T_NONREPLACABLE_IDENTIFIER), then the
resulting token was disabled too).
-- Added additional diagnostics to the Wave driver to disambiguate the C99 and
+- Added additional diagnostics to the Wave driver to disambiguate the C99 and
C++0x modes.
- Implemented a new API function and a corresponding Wave driver command line
option, which allows to specify one or more include files to be preprocessed
before the regular file is preprocessed (the files are processed as normal
- input and all the resulting output is included, before processing the regular
+ input and all the resulting output is included, before processing the regular
input file). The Wave driver command line option is --forceinclude (-F).
- Wave now compiles the Order library from Vesa Karvonen.
-
+
Mon Apr 28 07:57:10 2003
- Fixed a bug in the macro expansion engine.
-- Removed a lot of (not needed) whitespace in the generated output (but still
+- Removed a lot of (not needed) whitespace in the generated output (but still
not optimal).
Sat Apr 26 20:30:53 2003
-- Fixed a bug in the initialization code of the Slex lexer while working in
+- Fixed a bug in the initialization code of the Slex lexer while working in
C99 mode (reported by Reece Dunn).
Fri Apr 18 08:37:35 2003
@@ -1422,7 +1451,7 @@ Fri Apr 18 08:37:35 2003
- Started to implement experimental macro scoping.
Thu Apr 10 10:20:07 2003
-- Fixed a problem with the #pragma wave stop(), where only the first token
+- Fixed a problem with the #pragma wave stop(), where only the first token
inside the stop directive was output, when the preprocessor stops in result
of this pragma.
- Implemented a new #pragma wave system(command), which spawns a new operation
@@ -1430,42 +1459,42 @@ Thu Apr 10 10:20:07 2003
the stdout output of this process, retokenizes this output and inserts the
generated token sequence in place of the original #pragma or operator _Pragma.
Please note that the generated output is _not_ subject to any macro expansion
- before its insertion as the replacement of the pragma itself. If you need to
+ before its insertion as the replacement of the pragma itself. If you need to
macro expand the replacement text, you always may force this by writing:
#define SCAN(x) x
SCAN(_Pragma("wave system(...)"))
which re-scans the replacement once.
- Replaced the Wave position_iterator with the boost::spirit::position_iterator
(without any problems!).
-
+
Mon Apr 7 10:45:30 2003
-- Fixed macro_trace_policies::expand_object_like_macro not to be called with
+- Fixed macro_trace_policies::expand_object_like_macro not to be called with
the formal arguments as one of its parameters.
-- Updated the documentation to reflect the changes needed for the tracing
+- Updated the documentation to reflect the changes needed for the tracing
stuff.
-
+
Mon Mar 31 19:07:05 2003
- Fixed variadics support in the trace output.
- Fixed preprocessing of operator _Pragma() before it's execution.
-- Added _Pragma("wave stop(errmsg)") (#pragma wave stop(errmsg)) to allow
+- Added _Pragma("wave stop(errmsg)") (#pragma wave stop(errmsg)) to allow
diagnostics output from inside macro expansion.
- Fixed operator _Pragma for unknown pragmas (these are simply put through to
the output).
-- Implemented a maximal possible include nesting depth to avoid an out of
- memory error. The initial value for this is configurable through the compile
- time constant WAVE_MAX_INCLUDE_LEVEL_DEPTH, which defaults to 1024, if not
+- Implemented a maximal possible include nesting depth to avoid an out of
+ memory error. The initial value for this is configurable through the compile
+ time constant WAVE_MAX_INCLUDE_LEVEL_DEPTH, which defaults to 1024, if not
given.
Additionally this may be enlarged through a new command line option:
-n/--nesting (Wave driver only).
Sun Mar 30 20:40:17 2003
-- Implemented the predefined macro __INCLUDE_LEVEL__, which expands to a
- decimal integer constant that represents the depth of nesting in include
- files. The value of this macro is incremented on every '#include' directive
- and decremented at every end of file.
-- Implemented the operator _Pragma(). It is recognized in C99 mode and whenever
+- Implemented the predefined macro __INCLUDE_LEVEL__, which expands to a
+ decimal integer constant that represents the depth of nesting in include
+ files. The value of this macro is incremented on every '#include' directive
+ and decremented at every end of file.
+- Implemented the operator _Pragma(). It is recognized in C99 mode and whenever
variadics are enabled.
-
+
Sun Mar 30 08:30:12 2003
- Changed the tracing format to be more readable.
- Changed the tracing #pragma's to
@@ -1474,9 +1503,9 @@ Sun Mar 30 08:30:12 2003
or
enable tracing: #pragma wave trace(1)
disable tracing: #pragma wave trace(0)
-- Changed the semantics of the -t (--traceto) switch. Without any -t switch
+- Changed the semantics of the -t (--traceto) switch. Without any -t switch
there isn't generated any trace output at all, even, if the corresponding
- #pragma directives are found. To output the trace info to a file, the
+ #pragma directives are found. To output the trace info to a file, the
'-t file' syntax may be used, to output to std::cerr, the '-t-' (or '-t -')
syntax may be used.
@@ -1485,108 +1514,108 @@ Fri Mar 28 17:27:25 2003
to specify a policy for controlling the macro expansion tracing. The default
macro_trace_policy does no tracing at all. This way one can add specific
macro expansion tracing facilities to the library.
-- #pragma directives starting with a STDC identifier are no longer not macro
- expanded in C++ mode, in C++ mode these are now expanded as usual, in C99
+- #pragma directives starting with a STDC identifier are no longer not macro
+ expanded in C++ mode, in C++ mode these are now expanded as usual, in C99
mode not.
- The tracing can be enabled/disabled from inside the preprocessed stream by
inserting a special #pragma directive:
enable tracing: #pragma wave_option(trace: enable)
disable tracing: #pragma wave_option(trace: disable)
-- The Wave driver now allows to specify a destination for the macro expansion
+- The Wave driver now allows to specify a destination for the macro expansion
tracing trough a new command line switch: '-t path' or '--traceto path'. If
this option isn't given, the trace output goes to stderr.
-- The Wave driver now allows to specify the name of the file, where the
- preprocessed result stream is to be saved: '-o path' or '--output path'. If
+- The Wave driver now allows to specify the name of the file, where the
+ preprocessed result stream is to be saved: '-o path' or '--output path'. If
this option is not given, the output goes to stdout.
-
+
Wed Mar 26 20:39:11 2003
- Fixed a problem with alternative tokens (as 'and', 'or' etc.) and trigraph
tokens, which were not correctly recognized inside #if/#elif expressions.
-- Alternative tokens ('and', 'or' etc.) are no longer subject to a possible
+- Alternative tokens ('and', 'or' etc.) are no longer subject to a possible
macro redefinition.
-- Fixed the special handling of 'true' and 'false' during the macro expansion
+- Fixed the special handling of 'true' and 'false' during the macro expansion
of #if/#elif expressions.
Tue Mar 25 12:12:35 2003
- Released Wave V0.9.1
Mon Mar 24 13:34:27 2003
-- Implemented placemarkers, i.e. Wave now supports empty arguments during macro
+- Implemented placemarkers, i.e. Wave now supports empty arguments during macro
invocations. This must be enabled by means of a new pp constant:
- WAVE_SUPPORT_VARIADICS_PLACEMARKERS which must be defined to enable the
- placemarker and variadics code and by defining the command line option
+ WAVE_SUPPORT_VARIADICS_PLACEMARKERS which must be defined to enable the
+ placemarker and variadics code and by defining the command line option
'--variadics' (Wave driver only).
-- Implemented variadics, i.e. Wave now supports macros with variable parameter
+- Implemented variadics, i.e. Wave now supports macros with variable parameter
counts. This must be enabled by means of the pp constant:
- WAVE_SUPPORT_VARIADICS_PLACEMARKERS which must be defined to enable the
- placemarker and variadics code and by defining the command line option
+ WAVE_SUPPORT_VARIADICS_PLACEMARKERS which must be defined to enable the
+ placemarker and variadics code and by defining the command line option
'--variadics' (Wave driver only).
-- Implemented a C99 mode. This mode enables variadics and placemarkers by
- default and rejects some specific C++ tokens (as the alternate keywords and
+- Implemented a C99 mode. This mode enables variadics and placemarkers by
+ default and rejects some specific C++ tokens (as the alternate keywords and
'::', '->*', '.*'). This mode must be enabled by the means of the pp constant
- WAVE_SUPPORT_VARIADICS_PLACEMARKERS (see above). The C99 mode is enabled by
+ WAVE_SUPPORT_VARIADICS_PLACEMARKERS (see above). The C99 mode is enabled by
the command line switch '--c99' (Wave driver only).
This involved some changes in the C99/C++ lexers.
-
+
Fri Mar 21 16:02:10 2003
- Fixed a bug in the macro expansion engine, which prevented the expansion of
- macros, which name was concatenated out of a identifier and a integer
+ macros, which name was concatenated out of a identifier and a integer
followed directly by another identifier:
#define X() X_ ## 0R() // note: _zero_ followed by 'R'
#define X_0R() ...
X() // expanded to: X_0R(), but should expand to ...
- This is a problem resulting from the fact, that the Standard requires the
+ This is a problem resulting from the fact, that the Standard requires the
preprocessor to act on so called pp-tokens, but Wave acts on C++ tokens.
-
+
Thu Mar 20 21:39:21 2003
-- Fixed a problem with expression parsing (#if/#elif constant expressions),
+- Fixed a problem with expression parsing (#if/#elif constant expressions),
which failed to produce an error message for expressions like
#if 1 2 3 4 5
- i.e. where the token sequence starts with a valid constant expression, but
+ i.e. where the token sequence starts with a valid constant expression, but
the remainder of the line contained other tokens than whitespace.
- Integrated the flex_string class from Andrei Alexandrescu (published on the
- CUJ site) to get COW-string behaviour for the token values and position
- filename strings. This resulted in a major overall speedup (about 2-3 times
+ CUJ site) to get COW-string behaviour for the token values and position
+ filename strings. This resulted in a major overall speedup (about 2-3 times
faster in dependency of the complexity of pp usage in the input stream).
-- Fixed a bug, which reported ill formed #if/#else expressions as errors, even
+- Fixed a bug, which reported ill formed #if/#else expressions as errors, even
if the current if block status (conditional compilation status) is false.
- Added a warning, if the last line of a file does not end with a newline.
- Improved error recognition and handling for malformed preprocessor directives
Mon Mar 17 19:53:29 2003
-- Fixed a concatenation problem: constructs like a##b##c where expanded
+- Fixed a concatenation problem: constructs like a##b##c where expanded
incorrectly.
-- Optimized the recognition of pp directives:
- - the parser is used only, if the next non-whitespace token starts a pp
- directive
+- Optimized the recognition of pp directives:
+ - the parser is used only, if the next non-whitespace token starts a pp
+ directive
- null directives now are recognized without calling the parser
- the parser isn't called anymore, if the if_block_status is false and no
conditional pp directive (#if etc.) is to be recognized.
These optimizations give a speed improvement by upto 40%.
-- Removed adjacent whitespace during macro expansion (needs to be revised,
+- Removed adjacent whitespace during macro expansion (needs to be revised,
since there is some whitespace left, which may be removed)
-
+
Sun Mar 16 23:19:11 2003
- Fixed a problem with include paths given on the command line, if the file
to preprocess was not given as a full path (driver executable).
- Fixed a problem with path names containing blanks (driver executable).
- Cleaned command line and argument handling (driver executable).
- Fixed a severe memory leak.
-- Fixed a bug, if a C++ keyword was used as a macro name or macro parameter
- name, which prevented the macro recognition and expansion to function
+- Fixed a bug, if a C++ keyword was used as a macro name or macro parameter
+ name, which prevented the macro recognition and expansion to function
properly.
-- Implemented the WAVE_SUPPORT_MS_EXTENSIONS compiler switch for the re2c
+- Implemented the WAVE_SUPPORT_MS_EXTENSIONS compiler switch for the re2c
generated lexer too.
-- Fixed a problem, which caused an internal T_PLACEHOLDER token to show up
+- Fixed a problem, which caused an internal T_PLACEHOLDER token to show up
outside the macro replacement engine.
-- Fixed a problem with macro #include directives, which prevents to find the
- file to include, if after the macro expansion the token sequence representing
+- Fixed a problem with macro #include directives, which prevents to find the
+ file to include, if after the macro expansion the token sequence representing
the filename began or ended with at least one whitespace token.
- Fixed a problem, which caused a false error message if the '#' character was
to be concatenated with an arbitrary other token.
-- The concatenation of a whitespace token with an arbitrary other token was
+- The concatenation of a whitespace token with an arbitrary other token was
reported as illegal token pasting (but it is certainly not).
-
+
Sat Mar 15 21:43:56 2003
- Added a default constructor to the wave::util::file_position template.
- Report the concatenation of unrelated tokens as an error.
@@ -1595,24 +1624,24 @@ Sat Mar 15 21:43:56 2003
Fri Mar 14 20:14:18 2003
- More work on documentation
- Changed file_position to expose accessor functions (the member variables are
- marked as private now). This opens up the possibility to provide another
+ marked as private now). This opens up the possibility to provide another
file_position implementation, which may be optimized in some way.
- Fixed a problem with the token name table, the alternate and trigraph token
names were printed incorrectly.
-- Fixed a bug, which prevented the correct recognition of 'defined X' (without
+- Fixed a bug, which prevented the correct recognition of 'defined X' (without
parenthesises).
-- Fixed a bug, which allowed to redefine and undefine the predefined name
+- Fixed a bug, which allowed to redefine and undefine the predefined name
'defined'.
-- Fixed a bug, which prevents the correct recognition of a macro based #include
+- Fixed a bug, which prevents the correct recognition of a macro based #include
directive, if it expands to something like #include <...>.
- Fixed a bug, which prevented the recognition of duplicate macro parameter
names.
-- Removed the insertion of additional whitespace inside of string literals
+- Removed the insertion of additional whitespace inside of string literals
(during stringizing).
-
+
Wed Mar 12 19:16:40 2003
-- Fixed a bug, which prevented the instantiation of the wave::context object
- with auxiliary iterators. The token type isn't coupled anymore with the
+- Fixed a bug, which prevented the instantiation of the wave::context object
+ with auxiliary iterators. The token type isn't coupled anymore with the
iterator type.
This required some changes in the interface:
- The wave::context object now has three template parameters (the iterator
@@ -1622,15 +1651,15 @@ Wed Mar 12 19:16:40 2003
- Implemented a new position_iterator template on top of the iterator_adaptor<>
template to make it work even for input_iterator type iterators.
- Fixed a bug in the regular expressions for the Slex lexer.
-- The function 'set_sys_include_delimiter()' was renamed to
- 'set_sysinclude_delimiter()' to better fit the naming scheme of the other
+- The function 'set_sys_include_delimiter()' was renamed to
+ 'set_sysinclude_delimiter()' to better fit the naming scheme of the other
functions.
- Wrote more documentation
- Unified the different token definitions of the lexers, so that there is only
one token type left. This required some changes in the interface:
- There is no need anymore to explicitly specify the namespace of the token
type to use.
-- Added the command line option -P to the Wave driver program, which predefines
+- Added the command line option -P to the Wave driver program, which predefines
a macro (i.e. defines it such, that is _not_ undefinable through an #undef
directive from inside the preprocessed program).
@@ -1641,7 +1670,7 @@ Thu Mar 6 20:02:44 2003
- Compiled Wave with IntelV7.0/DinkumwareSTL (from VC6sp5)
- Fixed new compilation problems with gcc -Wall
- Fixed the list_includes and cpp_tokens samples to compile and link correctly.
-- Fixed a bug, where a wrong filename was reported by the generated #line
+- Fixed a bug, where a wrong filename was reported by the generated #line
directive.
- Fixed a bug, where the __FILE__ macro was expanded without '\"' around the
filename.
@@ -1652,7 +1681,7 @@ Thu Mar 6 20:02:44 2003
Wed Mar 5 21:11:14 2003
- Reorganized the directory structure to mirror the namespace structure of the
library
-- Fixed a bug, where the complete input after the first found #include
+- Fixed a bug, where the complete input after the first found #include
directive were eaten up.
- Fixed a bug, where the __LINE__ macro expanded to a incorrect linenumber, if
the __LINE__ macro was encountered on a line after a '\\' '\n' sequence.
@@ -1660,96 +1689,96 @@ Wed Mar 5 21:11:14 2003
Tue Mar 4 11:50:24 2003
- The new name of the project is 'Wave'.
- Adjusted namespaces, comments etc. to reflect the new name.
-- Added the command line option -U [--undefine], which allows to remove one of
- the predefined macros (except __LINE__, __FILE__, __DATE__, __TIME__,
+- Added the command line option -U [--undefine], which allows to remove one of
+ the predefined macros (except __LINE__, __FILE__, __DATE__, __TIME__,
__STDC__ and __cplusplus)
Sun Mar 2 20:10:04 2003
- Fixed a bug while expanding macros without any definition part (empty macros)
- The pp-iterator will not emit a newline for every recognized preprocessing
- directive anymore. The generated output is much more condensed this way.
+ directive anymore. The generated output is much more condensed this way.
- The pp-iterator now emits #line directives at appropriate places.
- Added an additional parser to the library, which may be used to parse macros
given in the command line syntax, i.e. something like 'MACRO(x)=definition'.
-- Added the possibility to the cpp driver sample, to add macros from the
+- Added the possibility to the cpp driver sample, to add macros from the
command line through the -D command line switch.
-- Martin Wille contributed a test script to allow automatic testing of the
+- Martin Wille contributed a test script to allow automatic testing of the
cpp driver sample by feeding all files contained in the test_files directory
- through the cpp driver and comparing the generated output with the
+ through the cpp driver and comparing the generated output with the
corresponding expectations.
- Added config file support to allow for predefined option sets (for instance
for the emulation of other compilers)
-- Changed the way, how include paths are defined. It resembles now the
- behaviour of gcc.
- Any directories specified with '-I' options before an eventually given '-I-'
- option are searched only for the case of '#include "file"', they are not
- searched for '#include <file>' directives. If additional directories are
- specified with '-I' options after a '-I-' option was given, these directories
- are searched for all '#include' directives. In addition, the '-I-' option
- inhibits the use of the current directory as the first search directory for
- '#include "file"'. Therefore, the current directory is searched only if it is
- requested explicitly with '-I.'. Specifying both '-I-' and '-I.' allows to
- control precisely which directories are searched before the current one
+- Changed the way, how include paths are defined. It resembles now the
+ behaviour of gcc.
+ Any directories specified with '-I' options before an eventually given '-I-'
+ option are searched only for the case of '#include "file"', they are not
+ searched for '#include <file>' directives. If additional directories are
+ specified with '-I' options after a '-I-' option was given, these directories
+ are searched for all '#include' directives. In addition, the '-I-' option
+ inhibits the use of the current directory as the first search directory for
+ '#include "file"'. Therefore, the current directory is searched only if it is
+ requested explicitly with '-I.'. Specifying both '-I-' and '-I.' allows to
+ control precisely which directories are searched before the current one
and which are searched after.
- Added config file support to the cpp driver.
- stored not only the current 'name' of a file (given eventually by a #line
directive) but in parallel the actual full file system name of this file too.
-
+
Tue Feb 25 21:44:19 2003
- Fixed the warnings emitted by gcc -Wall.
-- Fixed a bug in the cpp grammar, which causes to failing the recognition of
- certain preprocessor directives if at the end of this directive were placed
+- Fixed a bug in the cpp grammar, which causes to failing the recognition of
+ certain preprocessor directives if at the end of this directive were placed
a C++ comment.
- Simplified and extended the insertion of whitespace tokens at places, where
- otherwise two adjacent tokens would form a new different token, if
+ otherwise two adjacent tokens would form a new different token, if
retokenized.
Mon Feb 24 19:13:46 2003
- defined() functionality was broken
- added missing typename keywords
- added missing using namespace statements, where appropriate
-- added a warning, when a predefined macro is to be undefined (by an #undef
+- added a warning, when a predefined macro is to be undefined (by an #undef
directive)
-- removed the 'compile in C mode' hack for the re2c generated lexer (VC7.1
- (final beta) is not able to compile it with optimizations switched on
+- removed the 'compile in C mode' hack for the re2c generated lexer (VC7.1
+ (final beta) is not able to compile it with optimizations switched on
anyway :( )
- compiled with gcc 3.2 and Intel V7.0 (20030129Z)
Sun Feb 23 23:39:33 2003
- Fixed a couple of 'missing typename' bugs (thanks to Martin Wille)
-- Added code to insert whitespace at places, where otherwise two adjacent
+- Added code to insert whitespace at places, where otherwise two adjacent
tokens would form a new different token, if retokenized.
- Fixed a severe macro expansion bug.
-- Added the handling of invalid or not allowed universal character values
+- Added the handling of invalid or not allowed universal character values
inside of string literals and character literals.
Sat Feb 22 20:52:06 2003
- Bumped version to 0.9.0
- Added test for invalid or not allowed universal character values (see
C++ Standard 2.2.2 [lex.charset] and Annex E)
-- Fixed a bug with newlines between a macro name and the opening parenthesis
+- Fixed a bug with newlines between a macro name and the opening parenthesis
during the macro expansion and a bug with newlines inside the parameter list
during the macro expansion.
- Added the following predefined macros:
__SPIRIT_PP__
- expands to the version number of the pp-iterator lib (i.e. 0x0090 for
+ expands to the version number of the pp-iterator lib (i.e. 0x0090 for
V0.9.0)
__SPIRIT_PP_VERSION__
expands to the full version number of the pp-iterator lib (i.e.
0x00900436 for V0.9.0.436)
__SPIRIT_PP_VERSION_STR__
- expands to the full version string of the pp-iterator lib (i.e.
+ expands to the full version string of the pp-iterator lib (i.e.
"0.9.0.436")
-
+
Fri Feb 21 22:09:04 2003 (feature complete!)
-- Allowed to optionally compile the Re2c generated lexer in 'C' mode, because
+- Allowed to optionally compile the Re2c generated lexer in 'C' mode, because
at least the VC7.1 (final beta) compiler has problems to compile it in 'C++'
mode with optimizations switch on
-- Implemented #error and #warning (optional) directives (C++ standard 16.5).
- Additionally there are now allowed the following preprocessor configuration
+- Implemented #error and #warning (optional) directives (C++ standard 16.5).
+ Additionally there are now allowed the following preprocessor configuration
constants:
CPP_PREPROCESS_ERROR_MESSAGE_BODY
- if defined, preprocesses the message body of #error and #warning
+ if defined, preprocesses the message body of #error and #warning
directives to allow for better diagnostics.
CPP_SUPPORT_WARNING_DIRECTIVE
if defined, then the #warning directive will be recognized such, that
@@ -1758,64 +1787,64 @@ Fri Feb 21 22:09:04 2003 (feature complete!)
error inside the lexer is now propagated as an cpplexer_exception.
- Implemented the #line directive (C++ standard 16.4)
- Implemented #pragma directive (C++ standard 16.6)
- Additionally there are now allowed the following preprocessor configuration
+ Additionally there are now allowed the following preprocessor configuration
constants:
CPP_RETURN_PRAGMA_DIRECTIVES
if defined, then the whole pragma directive is returned as a token
- sequence to the caller, if not defined the whole pragma directive is
+ sequence to the caller, if not defined the whole pragma directive is
skipped
CPP_PREPROCESS_PRAGMA_BODY
- if defined, then the #pragma body will be preprocessed
+ if defined, then the #pragma body will be preprocessed
- Implemented #include directive with macro arguments (C++ standard 16.2.4)
-- Made the namespace structure finer granulated to leave only the main
+- Made the namespace structure finer granulated to leave only the main
interface classes in the main namespace cpp. All other classes are moved into
sub-namespaces to reflect the logical dependencies
- Reorganized the public interface of the context<> template class, made all
non relevant functions into the protected.
- Implemented predefined macros (__LINE__ et.al.) (C++ standard 16.8)
- Further documentation work
-
+
Wed Feb 19 23:44:47 2003
-- Corrected a lot of bugs in the macro expansion engine, which now should be
+- Corrected a lot of bugs in the macro expansion engine, which now should be
conformant to the C++ standard.
- # (null) directive (C++ standard 16.7)
Sun Feb 16 08:40:38 2003
-- Added a macro expansion engine which expands macros with arguments
+- Added a macro expansion engine which expands macros with arguments
C++ standard 16.3 [cpp.replace]
- Added a new sample: cpp_tokens. This sample preprocesses a given file and
- prints out the string representations of all tokens returned from the pp
+ prints out the string representations of all tokens returned from the pp
iterator
- Added documentation (to be continued!)
- Added a couple of small test files to test elementary functionality
(the tests mainly were contributed by Paul Mensonides)
-- The main cpp sample is now a simple preprocessor driver program, which
- outputs the string representation of the preprocessed input stream. Use
+- The main cpp sample is now a simple preprocessor driver program, which
+ outputs the string representation of the preprocessed input stream. Use
cpp --help to get a hint, how to use it.
-- Fixed a bug in the preprocessor grammar which failed to recognize a pp
+- Fixed a bug in the preprocessor grammar which failed to recognize a pp
statement, if there was a C++ comment at the end of the line
- Added '#' operator (C++ standard 16.3.2) [cpp.stringize]
-- Fixed a bug in the slex based C++ lexer to handle the concatenation
+- Fixed a bug in the slex based C++ lexer to handle the concatenation
characters correctly ('\\' followed by a '\n')
Sun Feb 9 23:01:00 2003
- Improved error handling for #if et.al.
- Fixed a pair of lexer errors
-- Implemented the #if/#elif statements, the sample now contains a complete C++
- expression evaluation engine (for the calculation of the outcome of the
+- Implemented the #if/#elif statements, the sample now contains a complete C++
+ expression evaluation engine (for the calculation of the outcome of the
#if/#elif statement conditions)
- Implemented macro replacement (with parameters)
- Implemented the '##' [cpp.concat] operator
- Implemented the defined() [cpp.cond] operator
Sun Feb 2 23:28:24 2003
-- Implemented the #define, #undef, #ifdef, #ifndef, #else and #endif
+- Implemented the #define, #undef, #ifdef, #ifndef, #else and #endif
statements
- Added optional parse tree output as xml stream (controlled through the config
pp constant CPP_DUMP_PARSE_TREE)
Fri Jan 31 21:30:55 2003
-- Fixed different minor issues and a border case (#include statement at the
+- Fixed different minor issues and a border case (#include statement at the
last line of a included file)
Wed Jan 29 21:13:32 2003
@@ -1826,40 +1855,40 @@ Wed Jan 29 21:13:32 2003
Sat Jan 18 22:01:03 2003
- Fixed a bug in the stream position calculation scheme
-- Made cpp::exceptions more standard conformant (added 'throw()' at appropriate
+- Made cpp::exceptions more standard conformant (added 'throw()' at appropriate
places)
- Overall housekeeping :-)
Wed Jan 15 21:54:20 2003
Changes since project start (still 0.5.0)
- Added #include <...> and #include "..." functionality
-- pp directives are now generally recognized
+- pp directives are now generally recognized
- Decoupled the C++ lexers and the pp grammar to separate compilation
units (optionally) to speed up compilation (a lot!)
Thu Jan 2 12:39:30 2003
-A completely new version 0.5.0 of the C preprocessor was started. It's a
+A completely new version 0.5.0 of the C preprocessor was started. It's a
complete rewrite of the existing code base. The main differences are:
-- The preprocessor is now implemented as an iterator, which returns the
+- The preprocessor is now implemented as an iterator, which returns the
current preprocessed token from the input stream.
- The preprocessing of include files isn't implemented through recursion
anymore. This follows directly from the first change. As a result of this
change the internal error handling is simplified.
-- The C preprocessor iterator itself is feeded by a new unified C++ lexer
- iterator. BTW, this C++ lexer iterator could be used standalone and is not
- tied to the C preprocessor. There are two different C++ lexers implemented
+- The C preprocessor iterator itself is feeded by a new unified C++ lexer
+ iterator. BTW, this C++ lexer iterator could be used standalone and is not
+ tied to the C preprocessor. There are two different C++ lexers implemented
now, which are functionally completely identical. These expose a similar
interface, so the C preprocessor could be used with both of them.
- The C++ lexers integrated into the C preprocessor by now are:
- Slex: A spirit based table driven regular expression lexer (the slex
+ Slex: A spirit based table driven regular expression lexer (the slex
engine originally was written by Dan Nuffer and is available as a
separate Spirit sample).
Re2c: A C++ lexer generated with the help of the re2c tool. This C++
lexer was written as a sample by Dan Nuffer too.
It isn't hard to plug in additional different C++ lexers. There are plans to
- integrate a third one written by Juan Carlos Arevalo-Baeza, which is
+ integrate a third one written by Juan Carlos Arevalo-Baeza, which is
available as a Spirit sample.
-
+
-------------------------------------------------------------------------------
Tue Feb 12 22:29:50 2002
Changes from 0.2.3 to 0.2.4:
@@ -1869,7 +1898,7 @@ Changes from 0.2.3 to 0.2.4:
Sun Feb 10 21:07:19 2002
Changes from 0.2.2 to 0.2.3:
- Implemented concatenation operator '##' (cpp.concat)
-- Removed defined() functionality for Intel compiler (it ICE's) until this
+- Removed defined() functionality for Intel compiler (it ICE's) until this
issue is resolved
- Separated code for dumping a parse tree to XML for inclusion in the main
Spirit headers
@@ -1878,7 +1907,7 @@ Thu Jan 17 23:51:21 2002
Changes from 0.2.1 to 0.2.2:
- Fixes to compile with gcc 2.95.2 and gcc 3.0.2 (thanks Dan Nuffer)
- Reformatted the grammars to conform to a single formatting guideline
-- Assigned explicit rule_id's to the rules of cpp_grammar, so that the
+- Assigned explicit rule_id's to the rules of cpp_grammar, so that the
access code to the embedded definition class is not needed anymore
- Fixed a remaining const problem
@@ -1903,9 +1932,9 @@ Changes from 0.1.0 to 0.2.0:
- Added directive '#warning'
- Corrected error reporting
- Added command line option -I- for finer control of the searched include
- directories (-I and -I- should now work as in gcc, see readme.html for
+ directories (-I and -I- should now work as in gcc, see readme.html for
more info)
- Corrected conditional preprocessing (should be fully functional now)
- Fixed existing code base for changes made in parse tree support
-- Moved parse tree utility functions to a separate header (prepared for
+- Moved parse tree utility functions to a separate header (prepared for
inclusion to the Spirit main library)
diff --git a/libs/wave/samples/cpp_tokens/cpp_tokens.cpp b/libs/wave/samples/cpp_tokens/cpp_tokens.cpp
index 7ee3eaf71d..5e8ff5edcd 100644
--- a/libs/wave/samples/cpp_tokens/cpp_tokens.cpp
+++ b/libs/wave/samples/cpp_tokens/cpp_tokens.cpp
@@ -8,7 +8,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/cpp_tokens.hpp b/libs/wave/samples/cpp_tokens/cpp_tokens.hpp
index 61a862fca2..092c01e486 100644
--- a/libs/wave/samples/cpp_tokens/cpp_tokens.hpp
+++ b/libs/wave/samples/cpp_tokens/cpp_tokens.hpp
@@ -8,7 +8,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/cpp_tokens_config.hpp b/libs/wave/samples/cpp_tokens/cpp_tokens_config.hpp
index 3b039edafa..80fa5ac240 100644
--- a/libs/wave/samples/cpp_tokens/cpp_tokens_config.hpp
+++ b/libs/wave/samples/cpp_tokens/cpp_tokens_config.hpp
@@ -6,7 +6,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/instantiate_cpp_exprgrammar.cpp b/libs/wave/samples/cpp_tokens/instantiate_cpp_exprgrammar.cpp
index 544f0b40eb..0c4fa12981 100644
--- a/libs/wave/samples/cpp_tokens/instantiate_cpp_exprgrammar.cpp
+++ b/libs/wave/samples/cpp_tokens/instantiate_cpp_exprgrammar.cpp
@@ -7,7 +7,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/instantiate_cpp_grammar.cpp b/libs/wave/samples/cpp_tokens/instantiate_cpp_grammar.cpp
index b0fe989f68..5781f83d77 100644
--- a/libs/wave/samples/cpp_tokens/instantiate_cpp_grammar.cpp
+++ b/libs/wave/samples/cpp_tokens/instantiate_cpp_grammar.cpp
@@ -6,7 +6,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/instantiate_cpp_literalgrs.cpp b/libs/wave/samples/cpp_tokens/instantiate_cpp_literalgrs.cpp
index a3fbe6df4b..48758679e5 100644
--- a/libs/wave/samples/cpp_tokens/instantiate_cpp_literalgrs.cpp
+++ b/libs/wave/samples/cpp_tokens/instantiate_cpp_literalgrs.cpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/instantiate_defined_grammar.cpp b/libs/wave/samples/cpp_tokens/instantiate_defined_grammar.cpp
index 7bbb9fded1..acec5c481b 100644
--- a/libs/wave/samples/cpp_tokens/instantiate_defined_grammar.cpp
+++ b/libs/wave/samples/cpp_tokens/instantiate_defined_grammar.cpp
@@ -3,7 +3,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/instantiate_slex_lexer.cpp b/libs/wave/samples/cpp_tokens/instantiate_slex_lexer.cpp
index d688f3114c..bbdcdd108f 100644
--- a/libs/wave/samples/cpp_tokens/instantiate_slex_lexer.cpp
+++ b/libs/wave/samples/cpp_tokens/instantiate_slex_lexer.cpp
@@ -6,7 +6,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/slex/cpp_slex_lexer.hpp b/libs/wave/samples/cpp_tokens/slex/cpp_slex_lexer.hpp
index 170863c68c..44f576142a 100644
--- a/libs/wave/samples/cpp_tokens/slex/cpp_slex_lexer.hpp
+++ b/libs/wave/samples/cpp_tokens/slex/cpp_slex_lexer.hpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/slex/lexer.hpp b/libs/wave/samples/cpp_tokens/slex/lexer.hpp
index 5d773a0d0e..042232ee3b 100644
--- a/libs/wave/samples/cpp_tokens/slex/lexer.hpp
+++ b/libs/wave/samples/cpp_tokens/slex/lexer.hpp
@@ -6,7 +6,7 @@
http://www.boost.org/
Copyright (c) 2001, Daniel C. Nuffer.
- Copyright (c) 2001-2011 Hartmut Kaiser.
+ Copyright (c) 2001-2012 Hartmut Kaiser.
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/samples/cpp_tokens/slex_interface.hpp b/libs/wave/samples/cpp_tokens/slex_interface.hpp
index 15107d16ec..c89c2e9acc 100644
--- a/libs/wave/samples/cpp_tokens/slex_interface.hpp
+++ b/libs/wave/samples/cpp_tokens/slex_interface.hpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/slex_iterator.hpp b/libs/wave/samples/cpp_tokens/slex_iterator.hpp
index 1307ec20be..1fe5ce93fe 100644
--- a/libs/wave/samples/cpp_tokens/slex_iterator.hpp
+++ b/libs/wave/samples/cpp_tokens/slex_iterator.hpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/cpp_tokens/slex_token.hpp b/libs/wave/samples/cpp_tokens/slex_token.hpp
index 8532237060..8a54776d74 100644
--- a/libs/wave/samples/cpp_tokens/slex_token.hpp
+++ b/libs/wave/samples/cpp_tokens/slex_token.hpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/custom_directives/custom_directives.cpp b/libs/wave/samples/custom_directives/custom_directives.cpp
index 33ffaa647a..e2eddcd3c3 100644
--- a/libs/wave/samples/custom_directives/custom_directives.cpp
+++ b/libs/wave/samples/custom_directives/custom_directives.cpp
@@ -4,7 +4,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/custom_directives/custom_directives.hpp b/libs/wave/samples/custom_directives/custom_directives.hpp
index 399c0e27ce..c18a8ae2c0 100644
--- a/libs/wave/samples/custom_directives/custom_directives.hpp
+++ b/libs/wave/samples/custom_directives/custom_directives.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.cpp b/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.cpp
index f2aba54a8f..3ccbbde17e 100644
--- a/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.cpp
+++ b/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.cpp
@@ -4,7 +4,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.hpp b/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.hpp
index d353a44636..2284a3c839 100644
--- a/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.hpp
+++ b/libs/wave/samples/emit_custom_line_directives/emit_custom_line_directives.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/samples/quick_start/quick_start.cpp b/libs/wave/samples/quick_start/quick_start.cpp
index 314663ff6b..ac31001b09 100644
--- a/libs/wave/samples/quick_start/quick_start.cpp
+++ b/libs/wave/samples/quick_start/quick_start.cpp
@@ -3,7 +3,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/cpplexer/re2clex/aq.cpp b/libs/wave/src/cpplexer/re2clex/aq.cpp
index b81d5b3324..597b3f8d5c 100644
--- a/libs/wave/src/cpplexer/re2clex/aq.cpp
+++ b/libs/wave/src/cpplexer/re2clex/aq.cpp
@@ -3,7 +3,7 @@
http://www.boost.org/
Copyright (c) 2001 Daniel C. Nuffer.
- Copyright (c) 2001-2011 Hartmut Kaiser.
+ Copyright (c) 2001-2012 Hartmut Kaiser.
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/cpplexer/re2clex/cpp_re.cpp b/libs/wave/src/cpplexer/re2clex/cpp_re.cpp
index 69d77c3726..35569d4e0f 100644
--- a/libs/wave/src/cpplexer/re2clex/cpp_re.cpp
+++ b/libs/wave/src/cpplexer/re2clex/cpp_re.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
Copyright (c) 2001 Daniel C. Nuffer
- Copyright (c) 2001-2011 Hartmut Kaiser.
+ Copyright (c) 2001-2012 Hartmut Kaiser.
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/src/instantiate_cpp_exprgrammar.cpp b/libs/wave/src/instantiate_cpp_exprgrammar.cpp
index 7318c29fa4..01b6079554 100644
--- a/libs/wave/src/instantiate_cpp_exprgrammar.cpp
+++ b/libs/wave/src/instantiate_cpp_exprgrammar.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_cpp_grammar.cpp b/libs/wave/src/instantiate_cpp_grammar.cpp
index 89cc3d7f36..3c2fa7cb86 100644
--- a/libs/wave/src/instantiate_cpp_grammar.cpp
+++ b/libs/wave/src/instantiate_cpp_grammar.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_cpp_literalgrs.cpp b/libs/wave/src/instantiate_cpp_literalgrs.cpp
index 4fbfb87f22..370b1cd4dc 100644
--- a/libs/wave/src/instantiate_cpp_literalgrs.cpp
+++ b/libs/wave/src/instantiate_cpp_literalgrs.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_defined_grammar.cpp b/libs/wave/src/instantiate_defined_grammar.cpp
index b7afe3f1ef..f6923410b8 100644
--- a/libs/wave/src/instantiate_defined_grammar.cpp
+++ b/libs/wave/src/instantiate_defined_grammar.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_predef_macros.cpp b/libs/wave/src/instantiate_predef_macros.cpp
index 758ad9734a..48679d5b75 100644
--- a/libs/wave/src/instantiate_predef_macros.cpp
+++ b/libs/wave/src/instantiate_predef_macros.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_re2c_lexer.cpp b/libs/wave/src/instantiate_re2c_lexer.cpp
index cd1b8898ff..04dd775d64 100644
--- a/libs/wave/src/instantiate_re2c_lexer.cpp
+++ b/libs/wave/src/instantiate_re2c_lexer.cpp
@@ -4,7 +4,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/instantiate_re2c_lexer_str.cpp b/libs/wave/src/instantiate_re2c_lexer_str.cpp
index 138ed6c3bb..9c9014bc9e 100644
--- a/libs/wave/src/instantiate_re2c_lexer_str.cpp
+++ b/libs/wave/src/instantiate_re2c_lexer_str.cpp
@@ -4,7 +4,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/token_ids.cpp b/libs/wave/src/token_ids.cpp
index 35e7725b43..17ce83659f 100644
--- a/libs/wave/src/token_ids.cpp
+++ b/libs/wave/src/token_ids.cpp
@@ -5,7 +5,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/src/wave_config_constant.cpp b/libs/wave/src/wave_config_constant.cpp
index 86a9f829e1..f43ee80281 100644
--- a/libs/wave/src/wave_config_constant.cpp
+++ b/libs/wave/src/wave_config_constant.cpp
@@ -4,7 +4,7 @@
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testlexers/cpp_tokens.hpp b/libs/wave/test/testlexers/cpp_tokens.hpp
index a14ca28845..8d3ce37e9d 100644
--- a/libs/wave/test/testlexers/cpp_tokens.hpp
+++ b/libs/wave/test/testlexers/cpp_tokens.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testlexers/test_lexertl_lexer.cpp b/libs/wave/test/testlexers/test_lexertl_lexer.cpp
index 19fce1ffd7..bef602f97b 100644
--- a/libs/wave/test/testlexers/test_lexertl_lexer.cpp
+++ b/libs/wave/test/testlexers/test_lexertl_lexer.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testlexers/test_re2c_lexer.cpp b/libs/wave/test/testlexers/test_re2c_lexer.cpp
index ccc837d979..344d8c4871 100644
--- a/libs/wave/test/testlexers/test_re2c_lexer.cpp
+++ b/libs/wave/test/testlexers/test_re2c_lexer.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testlexers/test_slex_lexer.cpp b/libs/wave/test/testlexers/test_slex_lexer.cpp
index 38dfc4ab5b..a0754a36d9 100644
--- a/libs/wave/test/testlexers/test_slex_lexer.cpp
+++ b/libs/wave/test/testlexers/test_slex_lexer.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testlexers/test_xlex_lexer.cpp b/libs/wave/test/testlexers/test_xlex_lexer.cpp
index 2763b5f4e5..12eb764283 100644
--- a/libs/wave/test/testlexers/test_xlex_lexer.cpp
+++ b/libs/wave/test/testlexers/test_xlex_lexer.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/cmd_line_utils.hpp b/libs/wave/test/testwave/cmd_line_utils.hpp
index 58dd4a5a8a..8d674aefe0 100644
--- a/libs/wave/test/testwave/cmd_line_utils.hpp
+++ b/libs/wave/test/testwave/cmd_line_utils.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/collect_hooks_information.hpp b/libs/wave/test/testwave/collect_hooks_information.hpp
index 5db78640f6..17f17adeec 100644
--- a/libs/wave/test/testwave/collect_hooks_information.hpp
+++ b/libs/wave/test/testwave/collect_hooks_information.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_001.cpp b/libs/wave/test/testwave/testfiles/t_1_001.cpp
index e348f86cdf..89c8a342a0 100644
--- a/libs/wave/test/testwave/testfiles/t_1_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_002.cpp b/libs/wave/test/testwave/testfiles/t_1_002.cpp
index 072134bf9c..315adc6a23 100644
--- a/libs/wave/test/testwave/testfiles/t_1_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_003.cpp b/libs/wave/test/testwave/testfiles/t_1_003.cpp
index 3d963a602c..28e01c8335 100644
--- a/libs/wave/test/testwave/testfiles/t_1_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_004.cpp b/libs/wave/test/testwave/testfiles/t_1_004.cpp
index 391093cd6c..bfcd320cc3 100644
--- a/libs/wave/test/testwave/testfiles/t_1_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_005.cpp b/libs/wave/test/testwave/testfiles/t_1_005.cpp
index 37e6bb913c..d8e8807893 100644
--- a/libs/wave/test/testwave/testfiles/t_1_005.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_005.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_006.cpp b/libs/wave/test/testwave/testfiles/t_1_006.cpp
index 81b46b2ea1..0635181059 100644
--- a/libs/wave/test/testwave/testfiles/t_1_006.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_006.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_007.cpp b/libs/wave/test/testwave/testfiles/t_1_007.cpp
index f9f156905a..57e796f8f4 100644
--- a/libs/wave/test/testwave/testfiles/t_1_007.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_007.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_008.cpp b/libs/wave/test/testwave/testfiles/t_1_008.cpp
index 392782f638..99034f3b37 100644
--- a/libs/wave/test/testwave/testfiles/t_1_008.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_008.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_009.cpp b/libs/wave/test/testwave/testfiles/t_1_009.cpp
index aa26130123..914ec6b721 100644
--- a/libs/wave/test/testwave/testfiles/t_1_009.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_009.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_010.cpp b/libs/wave/test/testwave/testfiles/t_1_010.cpp
index 90a0c57c85..fda84df66d 100644
--- a/libs/wave/test/testwave/testfiles/t_1_010.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_010.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_011.cpp b/libs/wave/test/testwave/testfiles/t_1_011.cpp
index ec83b971f2..ed1b7b6c45 100644
--- a/libs/wave/test/testwave/testfiles/t_1_011.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_011.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_012.cpp b/libs/wave/test/testwave/testfiles/t_1_012.cpp
index c9f7c7df93..c42a069095 100644
--- a/libs/wave/test/testwave/testfiles/t_1_012.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_012.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_013.cpp b/libs/wave/test/testwave/testfiles/t_1_013.cpp
index 979fdea79e..1746afb82c 100644
--- a/libs/wave/test/testwave/testfiles/t_1_013.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_013.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_014.cpp b/libs/wave/test/testwave/testfiles/t_1_014.cpp
index 3907e17b87..32df363d41 100644
--- a/libs/wave/test/testwave/testfiles/t_1_014.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_014.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_015.cpp b/libs/wave/test/testwave/testfiles/t_1_015.cpp
index 9e056fef73..6a20c5b49e 100644
--- a/libs/wave/test/testwave/testfiles/t_1_015.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_015.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_016.cpp b/libs/wave/test/testwave/testfiles/t_1_016.cpp
index e11100e2a5..d389e3c08c 100644
--- a/libs/wave/test/testwave/testfiles/t_1_016.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_016.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_017.cpp b/libs/wave/test/testwave/testfiles/t_1_017.cpp
index 536066e51f..9d025d2f8d 100644
--- a/libs/wave/test/testwave/testfiles/t_1_017.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_017.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_018.cpp b/libs/wave/test/testwave/testfiles/t_1_018.cpp
index 938c59ed32..8e84448854 100644
--- a/libs/wave/test/testwave/testfiles/t_1_018.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_018.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_019.cpp b/libs/wave/test/testwave/testfiles/t_1_019.cpp
index 924eb6a55f..1585bcddac 100644
--- a/libs/wave/test/testwave/testfiles/t_1_019.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_019.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_020.cpp b/libs/wave/test/testwave/testfiles/t_1_020.cpp
index 480aa2baf3..8c2673af70 100644
--- a/libs/wave/test/testwave/testfiles/t_1_020.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_020.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_021.cpp b/libs/wave/test/testwave/testfiles/t_1_021.cpp
index e95dd289d9..0c3bdcbfc0 100644
--- a/libs/wave/test/testwave/testfiles/t_1_021.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_021.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_022.cpp b/libs/wave/test/testwave/testfiles/t_1_022.cpp
index 053e8bd0f3..809cd67b65 100644
--- a/libs/wave/test/testwave/testfiles/t_1_022.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_022.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_023.cpp b/libs/wave/test/testwave/testfiles/t_1_023.cpp
index 82dccbc653..a54adbd261 100644
--- a/libs/wave/test/testwave/testfiles/t_1_023.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_023.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_024.cpp b/libs/wave/test/testwave/testfiles/t_1_024.cpp
index 7aba411610..b07cb9cc0f 100644
--- a/libs/wave/test/testwave/testfiles/t_1_024.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_024.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_025.cpp b/libs/wave/test/testwave/testfiles/t_1_025.cpp
index a4b64c8573..37a2409f9c 100644
--- a/libs/wave/test/testwave/testfiles/t_1_025.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_025.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_026.cpp b/libs/wave/test/testwave/testfiles/t_1_026.cpp
index 064c5cc0cb..df0cdcaa72 100644
--- a/libs/wave/test/testwave/testfiles/t_1_026.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_026.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_027.cpp b/libs/wave/test/testwave/testfiles/t_1_027.cpp
index eca0e906e0..39ccb3acc2 100644
--- a/libs/wave/test/testwave/testfiles/t_1_027.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_027.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_028.cpp b/libs/wave/test/testwave/testfiles/t_1_028.cpp
index b2aca29a36..67def4af98 100644
--- a/libs/wave/test/testwave/testfiles/t_1_028.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_028.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_029.cpp b/libs/wave/test/testwave/testfiles/t_1_029.cpp
index e4ba98222f..2cb1beb987 100644
--- a/libs/wave/test/testwave/testfiles/t_1_029.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_029.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_030.cpp b/libs/wave/test/testwave/testfiles/t_1_030.cpp
index d7faae41b5..bde34e3ecb 100644
--- a/libs/wave/test/testwave/testfiles/t_1_030.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_030.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_031.cpp b/libs/wave/test/testwave/testfiles/t_1_031.cpp
index 338f532a15..876795dcf8 100644
--- a/libs/wave/test/testwave/testfiles/t_1_031.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_031.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_032.cpp b/libs/wave/test/testwave/testfiles/t_1_032.cpp
index 26d75acf88..e523bb27c0 100644
--- a/libs/wave/test/testwave/testfiles/t_1_032.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_032.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_033.cpp b/libs/wave/test/testwave/testfiles/t_1_033.cpp
index 15a8c614e9..9b7ccd2cad 100644
--- a/libs/wave/test/testwave/testfiles/t_1_033.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_033.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_034.cpp b/libs/wave/test/testwave/testfiles/t_1_034.cpp
index e50bc9f2a7..d908c13e28 100644
--- a/libs/wave/test/testwave/testfiles/t_1_034.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_034.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_035.cpp b/libs/wave/test/testwave/testfiles/t_1_035.cpp
index 2bdea91f8f..449dbfdd55 100644
--- a/libs/wave/test/testwave/testfiles/t_1_035.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_035.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_036.cpp b/libs/wave/test/testwave/testfiles/t_1_036.cpp
index a799c1adc6..d798f523b7 100644
--- a/libs/wave/test/testwave/testfiles/t_1_036.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_036.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_037.cpp b/libs/wave/test/testwave/testfiles/t_1_037.cpp
index c7484e90a7..49b7da15ca 100644
--- a/libs/wave/test/testwave/testfiles/t_1_037.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_037.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_1_038.cpp b/libs/wave/test/testwave/testfiles/t_1_038.cpp
index ffa3df5284..526f1a25f8 100644
--- a/libs/wave/test/testwave/testfiles/t_1_038.cpp
+++ b/libs/wave/test/testwave/testfiles/t_1_038.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_001.cpp b/libs/wave/test/testwave/testfiles/t_2_001.cpp
index 1f5e6fd8ae..a300672c0c 100644
--- a/libs/wave/test/testwave/testfiles/t_2_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_002.cpp b/libs/wave/test/testwave/testfiles/t_2_002.cpp
index 6b6744c48e..797f865eec 100644
--- a/libs/wave/test/testwave/testfiles/t_2_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_003.cpp b/libs/wave/test/testwave/testfiles/t_2_003.cpp
index cae1516c67..c0f76ba3fe 100644
--- a/libs/wave/test/testwave/testfiles/t_2_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_004.cpp b/libs/wave/test/testwave/testfiles/t_2_004.cpp
index 957ba5f7b3..df66a5cbcf 100644
--- a/libs/wave/test/testwave/testfiles/t_2_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_005.cpp b/libs/wave/test/testwave/testfiles/t_2_005.cpp
index 75a5f87c3d..80d114aaf7 100644
--- a/libs/wave/test/testwave/testfiles/t_2_005.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_005.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_006.cpp b/libs/wave/test/testwave/testfiles/t_2_006.cpp
index 113b2db7b6..918c1ed6d2 100644
--- a/libs/wave/test/testwave/testfiles/t_2_006.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_006.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_007.cpp b/libs/wave/test/testwave/testfiles/t_2_007.cpp
index b1a4fe7595..ccd0cbcce5 100644
--- a/libs/wave/test/testwave/testfiles/t_2_007.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_007.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_008.cpp b/libs/wave/test/testwave/testfiles/t_2_008.cpp
index d1f40d313b..6fc61559cd 100644
--- a/libs/wave/test/testwave/testfiles/t_2_008.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_008.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_009.cpp b/libs/wave/test/testwave/testfiles/t_2_009.cpp
index 1013fd2c59..b72ca45d42 100644
--- a/libs/wave/test/testwave/testfiles/t_2_009.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_009.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_010.cpp b/libs/wave/test/testwave/testfiles/t_2_010.cpp
index 9e8699471e..bdc92a741c 100644
--- a/libs/wave/test/testwave/testfiles/t_2_010.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_010.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_011.cpp b/libs/wave/test/testwave/testfiles/t_2_011.cpp
index 3200b7da67..8f8dfedf31 100644
--- a/libs/wave/test/testwave/testfiles/t_2_011.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_011.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_012.cpp b/libs/wave/test/testwave/testfiles/t_2_012.cpp
index 3e6005adcf..67ff1fe7df 100644
--- a/libs/wave/test/testwave/testfiles/t_2_012.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_012.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_013.cpp b/libs/wave/test/testwave/testfiles/t_2_013.cpp
index a0733fa725..e44893f1df 100644
--- a/libs/wave/test/testwave/testfiles/t_2_013.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_013.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_014.cpp b/libs/wave/test/testwave/testfiles/t_2_014.cpp
index 3eb4d08232..9a6df37a18 100644
--- a/libs/wave/test/testwave/testfiles/t_2_014.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_014.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_015.cpp b/libs/wave/test/testwave/testfiles/t_2_015.cpp
index e8eb00782c..67d7bb42ed 100644
--- a/libs/wave/test/testwave/testfiles/t_2_015.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_015.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_016.cpp b/libs/wave/test/testwave/testfiles/t_2_016.cpp
index da703d8a51..43169d0f98 100644
--- a/libs/wave/test/testwave/testfiles/t_2_016.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_016.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_017.cpp b/libs/wave/test/testwave/testfiles/t_2_017.cpp
index 0f0540c33d..a69083c10d 100644
--- a/libs/wave/test/testwave/testfiles/t_2_017.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_017.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_018.cpp b/libs/wave/test/testwave/testfiles/t_2_018.cpp
index 8fac5030ba..8ca07c42bb 100644
--- a/libs/wave/test/testwave/testfiles/t_2_018.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_018.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_019.cpp b/libs/wave/test/testwave/testfiles/t_2_019.cpp
index 906d66fc0f..9a4729d019 100644
--- a/libs/wave/test/testwave/testfiles/t_2_019.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_019.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_019_001.hpp b/libs/wave/test/testwave/testfiles/t_2_019_001.hpp
index e6ff13f7a7..281621c3de 100644
--- a/libs/wave/test/testwave/testfiles/t_2_019_001.hpp
+++ b/libs/wave/test/testwave/testfiles/t_2_019_001.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_019_002.hpp b/libs/wave/test/testwave/testfiles/t_2_019_002.hpp
index 0822ab6639..778b8e0fa4 100644
--- a/libs/wave/test/testwave/testfiles/t_2_019_002.hpp
+++ b/libs/wave/test/testwave/testfiles/t_2_019_002.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_019_003.hpp b/libs/wave/test/testwave/testfiles/t_2_019_003.hpp
index 2d1bcc4dd4..ab9e5635e9 100644
--- a/libs/wave/test/testwave/testfiles/t_2_019_003.hpp
+++ b/libs/wave/test/testwave/testfiles/t_2_019_003.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_020.cpp b/libs/wave/test/testwave/testfiles/t_2_020.cpp
index ef5eb06b80..7691ffe363 100644
--- a/libs/wave/test/testwave/testfiles/t_2_020.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_020.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_021.cpp b/libs/wave/test/testwave/testfiles/t_2_021.cpp
index dd2c612bd7..ceef8e8a2b 100644
--- a/libs/wave/test/testwave/testfiles/t_2_021.cpp
+++ b/libs/wave/test/testwave/testfiles/t_2_021.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_2_022.cpp b/libs/wave/test/testwave/testfiles/t_2_022.cpp
new file mode 100644
index 0000000000..a25f3be349
--- /dev/null
+++ b/libs/wave/test/testwave/testfiles/t_2_022.cpp
@@ -0,0 +1,23 @@
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+ http://www.boost.org/
+
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying file
+ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+// Verify fix of regression #6838: Adding include file with force_include makes
+// Wave fail to emit #line directive
+
+//O --forceinclude=t_2_022.hpp
+
+//R #line 12 "t_2_022.hpp"
+//R int func() { return 42; }
+//R #line 19 "t_2_022.cpp"
+//R int main() { return func(); }
+int main() { return func(); }
+
+//H 04: t_2_022.hpp
+//H 05: $B(t_2_022.hpp) ($B(t_2_022.hpp))
+//H 06:
diff --git a/libs/wave/test/testwave/testfiles/t_2_022.hpp b/libs/wave/test/testwave/testfiles/t_2_022.hpp
new file mode 100644
index 0000000000..6b7c52f68f
--- /dev/null
+++ b/libs/wave/test/testwave/testfiles/t_2_022.hpp
@@ -0,0 +1,12 @@
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+ http://www.boost.org/
+
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying file
+ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+// Verify fix of regression #6838: Adding include file with force_include makes
+// Wave fail to emit #line directive
+int func() { return 42; }
diff --git a/libs/wave/test/testwave/testfiles/t_3_001.cpp b/libs/wave/test/testwave/testfiles/t_3_001.cpp
index 4b96917857..1718a5ddfa 100644
--- a/libs/wave/test/testwave/testfiles/t_3_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_3_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_3_002.cpp b/libs/wave/test/testwave/testfiles/t_3_002.cpp
index f8722fcfa3..cb98259481 100644
--- a/libs/wave/test/testwave/testfiles/t_3_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_3_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_3_003.cpp b/libs/wave/test/testwave/testfiles/t_3_003.cpp
index 52935b1110..63c17b55ae 100644
--- a/libs/wave/test/testwave/testfiles/t_3_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_3_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_3_004.cpp b/libs/wave/test/testwave/testfiles/t_3_004.cpp
index 9cd981fefe..a5a0dc3ea3 100644
--- a/libs/wave/test/testwave/testfiles/t_3_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_3_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_4_001.cpp b/libs/wave/test/testwave/testfiles/t_4_001.cpp
index 13c45b0209..dbb52f7f8a 100644
--- a/libs/wave/test/testwave/testfiles/t_4_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_4_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_4_002.cpp b/libs/wave/test/testwave/testfiles/t_4_002.cpp
index b2b1c25e44..71feb4311b 100644
--- a/libs/wave/test/testwave/testfiles/t_4_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_4_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_4_003.cpp b/libs/wave/test/testwave/testfiles/t_4_003.cpp
index 9e1faa8b74..ec0566af09 100644
--- a/libs/wave/test/testwave/testfiles/t_4_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_4_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_4_004.cpp b/libs/wave/test/testwave/testfiles/t_4_004.cpp
index 3d4951154a..15f66e70f6 100644
--- a/libs/wave/test/testwave/testfiles/t_4_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_4_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_5_001.cpp b/libs/wave/test/testwave/testfiles/t_5_001.cpp
index 5988ea9966..7a2114229f 100644
--- a/libs/wave/test/testwave/testfiles/t_5_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_002.cpp b/libs/wave/test/testwave/testfiles/t_5_002.cpp
index 13ef188cf7..1e265095c2 100644
--- a/libs/wave/test/testwave/testfiles/t_5_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_003.cpp b/libs/wave/test/testwave/testfiles/t_5_003.cpp
index 3114f81fdf..55d249d6ab 100644
--- a/libs/wave/test/testwave/testfiles/t_5_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_004.cpp b/libs/wave/test/testwave/testfiles/t_5_004.cpp
index 64cfb2437e..e2b1db60c7 100644
--- a/libs/wave/test/testwave/testfiles/t_5_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_005.cpp b/libs/wave/test/testwave/testfiles/t_5_005.cpp
index a055bc831f..87b3ee1825 100644
--- a/libs/wave/test/testwave/testfiles/t_5_005.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_005.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_006.cpp b/libs/wave/test/testwave/testfiles/t_5_006.cpp
index ec00ce9f09..6f03d58975 100644
--- a/libs/wave/test/testwave/testfiles/t_5_006.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_006.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_007.cpp b/libs/wave/test/testwave/testfiles/t_5_007.cpp
index 8bbf20b75f..be08d5c357 100644
--- a/libs/wave/test/testwave/testfiles/t_5_007.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_007.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_007.hpp b/libs/wave/test/testwave/testfiles/t_5_007.hpp
index e2bfa55955..5534d768c1 100644
--- a/libs/wave/test/testwave/testfiles/t_5_007.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_007.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_5_008.cpp b/libs/wave/test/testwave/testfiles/t_5_008.cpp
index 48ec7af094..c934d11923 100644
--- a/libs/wave/test/testwave/testfiles/t_5_008.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_008.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_009.cpp b/libs/wave/test/testwave/testfiles/t_5_009.cpp
index e956138d67..b3141c9779 100644
--- a/libs/wave/test/testwave/testfiles/t_5_009.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_009.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_010.cpp b/libs/wave/test/testwave/testfiles/t_5_010.cpp
index 0f35aa215e..40d4609e36 100644
--- a/libs/wave/test/testwave/testfiles/t_5_010.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_010.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_011.cpp b/libs/wave/test/testwave/testfiles/t_5_011.cpp
index bbe892306b..2805a63bed 100644
--- a/libs/wave/test/testwave/testfiles/t_5_011.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_011.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_012.cpp b/libs/wave/test/testwave/testfiles/t_5_012.cpp
index 7d72cb16b2..d10107493b 100644
--- a/libs/wave/test/testwave/testfiles/t_5_012.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_012.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_013.cpp b/libs/wave/test/testwave/testfiles/t_5_013.cpp
index 41d4ea4588..3245bbd0b9 100644
--- a/libs/wave/test/testwave/testfiles/t_5_013.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_013.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_014.cpp b/libs/wave/test/testwave/testfiles/t_5_014.cpp
index e27f6cbb9f..c955d8f9d7 100644
--- a/libs/wave/test/testwave/testfiles/t_5_014.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_014.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_015.cpp b/libs/wave/test/testwave/testfiles/t_5_015.cpp
index 86f0ab72bb..49e4fd4969 100644
--- a/libs/wave/test/testwave/testfiles/t_5_015.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_015.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_016.cpp b/libs/wave/test/testwave/testfiles/t_5_016.cpp
index 38f2b9b5d8..f7bcc0f11d 100644
--- a/libs/wave/test/testwave/testfiles/t_5_016.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_016.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_017.cpp b/libs/wave/test/testwave/testfiles/t_5_017.cpp
index 201159d222..6a3679494d 100644
--- a/libs/wave/test/testwave/testfiles/t_5_017.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_017.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_018.cpp b/libs/wave/test/testwave/testfiles/t_5_018.cpp
index 981a60d831..8683accaa7 100644
--- a/libs/wave/test/testwave/testfiles/t_5_018.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_018.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_019.cpp b/libs/wave/test/testwave/testfiles/t_5_019.cpp
index 111fb8bcc2..e5bbf1a845 100644
--- a/libs/wave/test/testwave/testfiles/t_5_019.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_019.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_020.cpp b/libs/wave/test/testwave/testfiles/t_5_020.cpp
index 7786e314e8..877a8a7ea5 100644
--- a/libs/wave/test/testwave/testfiles/t_5_020.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_020.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_021.cpp b/libs/wave/test/testwave/testfiles/t_5_021.cpp
index d1381bab1c..1edd2d041d 100644
--- a/libs/wave/test/testwave/testfiles/t_5_021.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_021.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_022.cpp b/libs/wave/test/testwave/testfiles/t_5_022.cpp
index 4e7f31ece2..fd287dba2d 100644
--- a/libs/wave/test/testwave/testfiles/t_5_022.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_022.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_023.cpp b/libs/wave/test/testwave/testfiles/t_5_023.cpp
index c541437edf..6450af6c06 100644
--- a/libs/wave/test/testwave/testfiles/t_5_023.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_023.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_024.cpp b/libs/wave/test/testwave/testfiles/t_5_024.cpp
index edb5d3bfec..64c9b849a2 100644
--- a/libs/wave/test/testwave/testfiles/t_5_024.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_024.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_025.cpp b/libs/wave/test/testwave/testfiles/t_5_025.cpp
index 284e506abd..3243fc8851 100644
--- a/libs/wave/test/testwave/testfiles/t_5_025.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_025.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_026.cpp b/libs/wave/test/testwave/testfiles/t_5_026.cpp
index 6a1bfd40f1..a70da086d5 100644
--- a/libs/wave/test/testwave/testfiles/t_5_026.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_026.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_027.cpp b/libs/wave/test/testwave/testfiles/t_5_027.cpp
index dc07f68ec2..84066c5ae5 100644
--- a/libs/wave/test/testwave/testfiles/t_5_027.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_027.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_028.cpp b/libs/wave/test/testwave/testfiles/t_5_028.cpp
index 4ff9823ebf..15888794ca 100644
--- a/libs/wave/test/testwave/testfiles/t_5_028.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_028.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_029.cpp b/libs/wave/test/testwave/testfiles/t_5_029.cpp
index 0af0f7b1d6..202529c6bc 100644
--- a/libs/wave/test/testwave/testfiles/t_5_029.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_029.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_030.cpp b/libs/wave/test/testwave/testfiles/t_5_030.cpp
index e4155e4625..338467aeec 100644
--- a/libs/wave/test/testwave/testfiles/t_5_030.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_030.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_031.cpp b/libs/wave/test/testwave/testfiles/t_5_031.cpp
index ef74ff8178..7c1453c071 100644
--- a/libs/wave/test/testwave/testfiles/t_5_031.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_031.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_031.hpp b/libs/wave/test/testwave/testfiles/t_5_031.hpp
index 36a2c74652..43f1d39846 100644
--- a/libs/wave/test/testwave/testfiles/t_5_031.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_031.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_032.cpp b/libs/wave/test/testwave/testfiles/t_5_032.cpp
index 5c8d97008b..f04f05cf90 100644
--- a/libs/wave/test/testwave/testfiles/t_5_032.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_032.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_033.cpp b/libs/wave/test/testwave/testfiles/t_5_033.cpp
index 61b4d97e16..672ebd92cb 100644
--- a/libs/wave/test/testwave/testfiles/t_5_033.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_033.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_034.cpp b/libs/wave/test/testwave/testfiles/t_5_034.cpp
index dbec4997cf..92f609f6d9 100644
--- a/libs/wave/test/testwave/testfiles/t_5_034.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_034.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035.cpp b/libs/wave/test/testwave/testfiles/t_5_035.cpp
index 42ff7185c9..5c5d6bc15c 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035.cpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035.hpp b/libs/wave/test/testwave/testfiles/t_5_035.hpp
index d71813de31..2a48af765f 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_01.hpp b/libs/wave/test/testwave/testfiles/t_5_035_01.hpp
index f15dcb8ab8..ec93622bba 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_01.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_01.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_02.hpp b/libs/wave/test/testwave/testfiles/t_5_035_02.hpp
index b1d75d5832..e43a593d9a 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_02.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_02.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_03.hpp b/libs/wave/test/testwave/testfiles/t_5_035_03.hpp
index bd28774cc2..b721c89e95 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_03.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_03.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_04.hpp b/libs/wave/test/testwave/testfiles/t_5_035_04.hpp
index 4c188b87d2..c754d42779 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_04.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_04.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_05.hpp b/libs/wave/test/testwave/testfiles/t_5_035_05.hpp
index 82e7e7db7b..3a07b6f429 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_05.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_05.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_06.hpp b/libs/wave/test/testwave/testfiles/t_5_035_06.hpp
index 35d4077530..5c2a6859ca 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_06.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_06.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_07.hpp b/libs/wave/test/testwave/testfiles/t_5_035_07.hpp
index bf2493a4f9..d95d6a0703 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_07.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_07.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_08.hpp b/libs/wave/test/testwave/testfiles/t_5_035_08.hpp
index b01562191a..2a346da78f 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_08.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_08.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_09.hpp b/libs/wave/test/testwave/testfiles/t_5_035_09.hpp
index b61952d2d7..134c8814e4 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_09.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_09.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_10.hpp b/libs/wave/test/testwave/testfiles/t_5_035_10.hpp
index 6af6a5378d..957bc88e38 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_10.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_10.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_11.hpp b/libs/wave/test/testwave/testfiles/t_5_035_11.hpp
index 0774931f76..9c8c566d92 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_11.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_11.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_12.hpp b/libs/wave/test/testwave/testfiles/t_5_035_12.hpp
index 3a613795f0..46e695e112 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_12.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_12.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_13.hpp b/libs/wave/test/testwave/testfiles/t_5_035_13.hpp
index 873723c381..aaa28275de 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_13.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_13.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_14.hpp b/libs/wave/test/testwave/testfiles/t_5_035_14.hpp
index 5e077d7864..5840831c10 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_14.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_14.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_5_035_15.hpp b/libs/wave/test/testwave/testfiles/t_5_035_15.hpp
index 9da92e22e7..9989b95ca0 100644
--- a/libs/wave/test/testwave/testfiles/t_5_035_15.hpp
+++ b/libs/wave/test/testwave/testfiles/t_5_035_15.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_001.cpp b/libs/wave/test/testwave/testfiles/t_6_001.cpp
index 321646db4a..154c267978 100644
--- a/libs/wave/test/testwave/testfiles/t_6_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_002.cpp b/libs/wave/test/testwave/testfiles/t_6_002.cpp
index ae70f3c749..4109983d7a 100644
--- a/libs/wave/test/testwave/testfiles/t_6_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_003.cpp b/libs/wave/test/testwave/testfiles/t_6_003.cpp
index 7a014e399f..e6548b4d75 100644
--- a/libs/wave/test/testwave/testfiles/t_6_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_004.cpp b/libs/wave/test/testwave/testfiles/t_6_004.cpp
index b5b3cffbae..af948a51b7 100644
--- a/libs/wave/test/testwave/testfiles/t_6_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_005.cpp b/libs/wave/test/testwave/testfiles/t_6_005.cpp
index 9ea94638eb..d0865bf3a0 100644
--- a/libs/wave/test/testwave/testfiles/t_6_005.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_005.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_006.cpp b/libs/wave/test/testwave/testfiles/t_6_006.cpp
index 45f92d8cc4..5062602e05 100644
--- a/libs/wave/test/testwave/testfiles/t_6_006.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_006.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_007.cpp b/libs/wave/test/testwave/testfiles/t_6_007.cpp
index 37dc5d94b1..8c158ae692 100644
--- a/libs/wave/test/testwave/testfiles/t_6_007.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_007.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_008.cpp b/libs/wave/test/testwave/testfiles/t_6_008.cpp
index 0b50acfb0c..3b0cff5ac5 100644
--- a/libs/wave/test/testwave/testfiles/t_6_008.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_008.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_009.cpp b/libs/wave/test/testwave/testfiles/t_6_009.cpp
index 4cb80faa28..2ecff36d1c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_009.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_009.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_010.cpp b/libs/wave/test/testwave/testfiles/t_6_010.cpp
index 40590d7985..4c32afaad6 100644
--- a/libs/wave/test/testwave/testfiles/t_6_010.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_010.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_011.cpp b/libs/wave/test/testwave/testfiles/t_6_011.cpp
index 27d07da355..4773fe3a2c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_011.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_011.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_012.cpp b/libs/wave/test/testwave/testfiles/t_6_012.cpp
index eeed932f08..2ed7de72f5 100644
--- a/libs/wave/test/testwave/testfiles/t_6_012.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_012.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_013.cpp b/libs/wave/test/testwave/testfiles/t_6_013.cpp
index 9ad3c5c17e..e039439d76 100644
--- a/libs/wave/test/testwave/testfiles/t_6_013.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_013.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_014.cpp b/libs/wave/test/testwave/testfiles/t_6_014.cpp
index 2276222a66..5e44dcef6a 100644
--- a/libs/wave/test/testwave/testfiles/t_6_014.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_014.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_015.cpp b/libs/wave/test/testwave/testfiles/t_6_015.cpp
index f0504bc4cc..f072c9c885 100644
--- a/libs/wave/test/testwave/testfiles/t_6_015.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_015.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_016.cpp b/libs/wave/test/testwave/testfiles/t_6_016.cpp
index 406c4e088b..ec3d57a001 100644
--- a/libs/wave/test/testwave/testfiles/t_6_016.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_016.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_017.cpp b/libs/wave/test/testwave/testfiles/t_6_017.cpp
index 7f444f71a5..1617fc0d7d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_017.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_017.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_018.cpp b/libs/wave/test/testwave/testfiles/t_6_018.cpp
index 0e891cb3de..878274bcef 100644
--- a/libs/wave/test/testwave/testfiles/t_6_018.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_018.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_019.cpp b/libs/wave/test/testwave/testfiles/t_6_019.cpp
index be0bf81949..7a30e8e9b5 100644
--- a/libs/wave/test/testwave/testfiles/t_6_019.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_019.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_020.cpp b/libs/wave/test/testwave/testfiles/t_6_020.cpp
index f3df8b4ce5..7eafd389ab 100644
--- a/libs/wave/test/testwave/testfiles/t_6_020.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_020.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_021.cpp b/libs/wave/test/testwave/testfiles/t_6_021.cpp
index 3e01609a62..ff697cd253 100644
--- a/libs/wave/test/testwave/testfiles/t_6_021.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_021.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_022.cpp b/libs/wave/test/testwave/testfiles/t_6_022.cpp
index 0c1fce388c..f0d0061b27 100644
--- a/libs/wave/test/testwave/testfiles/t_6_022.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_022.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_023.cpp b/libs/wave/test/testwave/testfiles/t_6_023.cpp
index 764b57093a..f40b52035c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_023.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_023.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_024.cpp b/libs/wave/test/testwave/testfiles/t_6_024.cpp
index f1cdfc9ccf..118d50ed0c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_024.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_024.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_025.cpp b/libs/wave/test/testwave/testfiles/t_6_025.cpp
index e59e05a72b..b9f3e546a4 100644
--- a/libs/wave/test/testwave/testfiles/t_6_025.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_025.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_026.cpp b/libs/wave/test/testwave/testfiles/t_6_026.cpp
index c8c1b5302e..c224243098 100644
--- a/libs/wave/test/testwave/testfiles/t_6_026.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_026.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_027.cpp b/libs/wave/test/testwave/testfiles/t_6_027.cpp
index 0cebd53f77..04c6f94c82 100644
--- a/libs/wave/test/testwave/testfiles/t_6_027.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_027.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_028.cpp b/libs/wave/test/testwave/testfiles/t_6_028.cpp
index 08923ca211..6a5d2bac2b 100644
--- a/libs/wave/test/testwave/testfiles/t_6_028.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_028.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_029.cpp b/libs/wave/test/testwave/testfiles/t_6_029.cpp
index dd5a95fbc0..8261b4c01d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_029.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_029.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_029.hpp b/libs/wave/test/testwave/testfiles/t_6_029.hpp
index 9eddc02763..3333ec4900 100644
--- a/libs/wave/test/testwave/testfiles/t_6_029.hpp
+++ b/libs/wave/test/testwave/testfiles/t_6_029.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_030.cpp b/libs/wave/test/testwave/testfiles/t_6_030.cpp
index a62b34e1df..0459b8d62a 100644
--- a/libs/wave/test/testwave/testfiles/t_6_030.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_030.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_030.hpp b/libs/wave/test/testwave/testfiles/t_6_030.hpp
index dbc788a360..8ea0b22ab8 100644
--- a/libs/wave/test/testwave/testfiles/t_6_030.hpp
+++ b/libs/wave/test/testwave/testfiles/t_6_030.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_031.cpp b/libs/wave/test/testwave/testfiles/t_6_031.cpp
index 2a3caec4b8..d39525c3bb 100644
--- a/libs/wave/test/testwave/testfiles/t_6_031.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_031.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_032.cpp b/libs/wave/test/testwave/testfiles/t_6_032.cpp
index 129195e242..27777b2584 100644
--- a/libs/wave/test/testwave/testfiles/t_6_032.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_032.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_033.cpp b/libs/wave/test/testwave/testfiles/t_6_033.cpp
index 073a71c7d9..fd2b632720 100644
--- a/libs/wave/test/testwave/testfiles/t_6_033.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_033.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_034.cpp b/libs/wave/test/testwave/testfiles/t_6_034.cpp
index 55126a4f22..eecb88f2dc 100644
--- a/libs/wave/test/testwave/testfiles/t_6_034.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_034.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_035.cpp b/libs/wave/test/testwave/testfiles/t_6_035.cpp
index 9355b87f06..c785b931fd 100644
--- a/libs/wave/test/testwave/testfiles/t_6_035.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_035.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_036.cpp b/libs/wave/test/testwave/testfiles/t_6_036.cpp
index 599d435aa5..a168ddaa52 100644
--- a/libs/wave/test/testwave/testfiles/t_6_036.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_036.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_037.cpp b/libs/wave/test/testwave/testfiles/t_6_037.cpp
index 6548aa7844..36ee920520 100644
--- a/libs/wave/test/testwave/testfiles/t_6_037.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_037.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_038.cpp b/libs/wave/test/testwave/testfiles/t_6_038.cpp
index cd27e7f721..5e764d4545 100644
--- a/libs/wave/test/testwave/testfiles/t_6_038.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_038.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_039.cpp b/libs/wave/test/testwave/testfiles/t_6_039.cpp
index 8a4e48e63a..75adf8eeff 100644
--- a/libs/wave/test/testwave/testfiles/t_6_039.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_039.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_040.cpp b/libs/wave/test/testwave/testfiles/t_6_040.cpp
index bb373c74ac..647b41912d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_040.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_040.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_041.cpp b/libs/wave/test/testwave/testfiles/t_6_041.cpp
index 6e906bad0c..371612b870 100644
--- a/libs/wave/test/testwave/testfiles/t_6_041.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_041.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_042.cpp b/libs/wave/test/testwave/testfiles/t_6_042.cpp
index 4e98019571..237da9112c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_042.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_042.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_043.cpp b/libs/wave/test/testwave/testfiles/t_6_043.cpp
index c9e3f15648..c446129f31 100644
--- a/libs/wave/test/testwave/testfiles/t_6_043.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_043.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_044.cpp b/libs/wave/test/testwave/testfiles/t_6_044.cpp
index c858ea9311..802742f9a0 100644
--- a/libs/wave/test/testwave/testfiles/t_6_044.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_044.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_045.cpp b/libs/wave/test/testwave/testfiles/t_6_045.cpp
index b52cce10c6..fd605025c9 100644
--- a/libs/wave/test/testwave/testfiles/t_6_045.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_045.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_046.cpp b/libs/wave/test/testwave/testfiles/t_6_046.cpp
index a4ed55050d..53a3e85905 100644
--- a/libs/wave/test/testwave/testfiles/t_6_046.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_046.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_047.cpp b/libs/wave/test/testwave/testfiles/t_6_047.cpp
index d107b8c492..02c12f34f9 100644
--- a/libs/wave/test/testwave/testfiles/t_6_047.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_047.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_048.cpp b/libs/wave/test/testwave/testfiles/t_6_048.cpp
index 4fdb61246d..07db985e13 100644
--- a/libs/wave/test/testwave/testfiles/t_6_048.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_048.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_049.cpp b/libs/wave/test/testwave/testfiles/t_6_049.cpp
index e78af8c109..6abaf7d1c0 100644
--- a/libs/wave/test/testwave/testfiles/t_6_049.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_049.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_050.cpp b/libs/wave/test/testwave/testfiles/t_6_050.cpp
index 3942e9262b..aff380a2f0 100644
--- a/libs/wave/test/testwave/testfiles/t_6_050.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_050.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_051.cpp b/libs/wave/test/testwave/testfiles/t_6_051.cpp
index ff15e573b2..4dd98335a2 100644
--- a/libs/wave/test/testwave/testfiles/t_6_051.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_051.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_052.cpp b/libs/wave/test/testwave/testfiles/t_6_052.cpp
index 491aa074d8..943f398bdf 100644
--- a/libs/wave/test/testwave/testfiles/t_6_052.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_052.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_053.cpp b/libs/wave/test/testwave/testfiles/t_6_053.cpp
index 74aa8399fb..84f1e282d6 100644
--- a/libs/wave/test/testwave/testfiles/t_6_053.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_053.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_054.cpp b/libs/wave/test/testwave/testfiles/t_6_054.cpp
index 47c29332a4..1f55f1648f 100644
--- a/libs/wave/test/testwave/testfiles/t_6_054.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_054.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_055.cpp b/libs/wave/test/testwave/testfiles/t_6_055.cpp
index 5aad7b9224..413fe8aef5 100644
--- a/libs/wave/test/testwave/testfiles/t_6_055.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_055.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_056.cpp b/libs/wave/test/testwave/testfiles/t_6_056.cpp
index 0421a4079a..dafe05b065 100644
--- a/libs/wave/test/testwave/testfiles/t_6_056.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_056.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_057.cpp b/libs/wave/test/testwave/testfiles/t_6_057.cpp
index ed910816cf..d2efa5ecdc 100644
--- a/libs/wave/test/testwave/testfiles/t_6_057.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_057.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_058.cpp b/libs/wave/test/testwave/testfiles/t_6_058.cpp
index ca37ad90bd..e4c969be9d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_058.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_058.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_059.cpp b/libs/wave/test/testwave/testfiles/t_6_059.cpp
index 641421bae6..e36b19826d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_059.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_059.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_060.cpp b/libs/wave/test/testwave/testfiles/t_6_060.cpp
index 0d2a570b10..7ec2ef85e5 100644
--- a/libs/wave/test/testwave/testfiles/t_6_060.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_060.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_061.cpp b/libs/wave/test/testwave/testfiles/t_6_061.cpp
index f7621fa7df..25c6f46309 100644
--- a/libs/wave/test/testwave/testfiles/t_6_061.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_061.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_062.cpp b/libs/wave/test/testwave/testfiles/t_6_062.cpp
index df06a60470..1f15141103 100644
--- a/libs/wave/test/testwave/testfiles/t_6_062.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_062.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_063.cpp b/libs/wave/test/testwave/testfiles/t_6_063.cpp
index 50af5f0b1a..776561a7c8 100644
--- a/libs/wave/test/testwave/testfiles/t_6_063.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_063.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_063.hpp b/libs/wave/test/testwave/testfiles/t_6_063.hpp
index 6434c3dfc0..bd1faee1ad 100644
--- a/libs/wave/test/testwave/testfiles/t_6_063.hpp
+++ b/libs/wave/test/testwave/testfiles/t_6_063.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_064.cpp b/libs/wave/test/testwave/testfiles/t_6_064.cpp
index 14918463cd..ebf8918b6d 100644
--- a/libs/wave/test/testwave/testfiles/t_6_064.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_064.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_065.cpp b/libs/wave/test/testwave/testfiles/t_6_065.cpp
index 003f4f066b..819add33a3 100644
--- a/libs/wave/test/testwave/testfiles/t_6_065.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_065.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_066.cpp b/libs/wave/test/testwave/testfiles/t_6_066.cpp
index 7620b151ce..4f9868ec5c 100644
--- a/libs/wave/test/testwave/testfiles/t_6_066.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_066.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_066.hpp b/libs/wave/test/testwave/testfiles/t_6_066.hpp
index 1e8982c050..c0e7d88569 100644
--- a/libs/wave/test/testwave/testfiles/t_6_066.hpp
+++ b/libs/wave/test/testwave/testfiles/t_6_066.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_067.cpp b/libs/wave/test/testwave/testfiles/t_6_067.cpp
index 6c1b8e29bb..b5cdbd538a 100644
--- a/libs/wave/test/testwave/testfiles/t_6_067.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_067.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_067.hpp b/libs/wave/test/testwave/testfiles/t_6_067.hpp
index 9d9fcee0a0..ae0adec1a7 100644
--- a/libs/wave/test/testwave/testfiles/t_6_067.hpp
+++ b/libs/wave/test/testwave/testfiles/t_6_067.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_068.cpp b/libs/wave/test/testwave/testfiles/t_6_068.cpp
index 4ea1fb9933..e24d77c7a0 100644
--- a/libs/wave/test/testwave/testfiles/t_6_068.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_068.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_6_069.cpp b/libs/wave/test/testwave/testfiles/t_6_069.cpp
index d1b7eba1a1..a2edaa0c53 100644
--- a/libs/wave/test/testwave/testfiles/t_6_069.cpp
+++ b/libs/wave/test/testwave/testfiles/t_6_069.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/libs/wave/test/testwave/testfiles/t_7_001.cpp b/libs/wave/test/testwave/testfiles/t_7_001.cpp
index 0a714eae5b..7c35779440 100644
--- a/libs/wave/test/testwave/testfiles/t_7_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_7_001.cpp
@@ -2,12 +2,12 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
-//O --c++0x
+//O --c++11
//R #line 16 "t_7_001.cpp"
//R R"de
diff --git a/libs/wave/test/testwave/testfiles/t_9_001.cpp b/libs/wave/test/testwave/testfiles/t_9_001.cpp
index 5ba4154ae9..0732c71d6c 100644
--- a/libs/wave/test/testwave/testfiles/t_9_001.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_001.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_002.cpp b/libs/wave/test/testwave/testfiles/t_9_002.cpp
index aac5b16020..9c0b0ca6a7 100644
--- a/libs/wave/test/testwave/testfiles/t_9_002.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_002.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_003.cpp b/libs/wave/test/testwave/testfiles/t_9_003.cpp
index c7cef8b4f2..845eeb8c7e 100644
--- a/libs/wave/test/testwave/testfiles/t_9_003.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_003.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_004.cpp b/libs/wave/test/testwave/testfiles/t_9_004.cpp
index c31d10ee41..0a5fc6e9e8 100644
--- a/libs/wave/test/testwave/testfiles/t_9_004.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_004.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_005.cpp b/libs/wave/test/testwave/testfiles/t_9_005.cpp
index 0644fcd45a..f3e414dd4a 100644
--- a/libs/wave/test/testwave/testfiles/t_9_005.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_005.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_006.cpp b/libs/wave/test/testwave/testfiles/t_9_006.cpp
index 26004cda62..d96b464bba 100644
--- a/libs/wave/test/testwave/testfiles/t_9_006.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_006.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_007.cpp b/libs/wave/test/testwave/testfiles/t_9_007.cpp
index 1eb26d76ee..c5348e6d88 100644
--- a/libs/wave/test/testwave/testfiles/t_9_007.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_007.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_008.cpp b/libs/wave/test/testwave/testfiles/t_9_008.cpp
index f8cf61488e..fa0b557d0a 100644
--- a/libs/wave/test/testwave/testfiles/t_9_008.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_008.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_009.cpp b/libs/wave/test/testwave/testfiles/t_9_009.cpp
index 551305894f..6022034e85 100644
--- a/libs/wave/test/testwave/testfiles/t_9_009.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_009.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_010.cpp b/libs/wave/test/testwave/testfiles/t_9_010.cpp
index f784678d59..d4740440c2 100644
--- a/libs/wave/test/testwave/testfiles/t_9_010.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_010.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_011.cpp b/libs/wave/test/testwave/testfiles/t_9_011.cpp
index 7440e36a9b..fb2e06b55a 100644
--- a/libs/wave/test/testwave/testfiles/t_9_011.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_011.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_012.cpp b/libs/wave/test/testwave/testfiles/t_9_012.cpp
index 7c3f4a9010..36cf5a885b 100644
--- a/libs/wave/test/testwave/testfiles/t_9_012.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_012.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_013.cpp b/libs/wave/test/testwave/testfiles/t_9_013.cpp
index 03b9310776..6a8e21d8c4 100644
--- a/libs/wave/test/testwave/testfiles/t_9_013.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_013.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_014.cpp b/libs/wave/test/testwave/testfiles/t_9_014.cpp
index 113967ae80..35c80e05a7 100644
--- a/libs/wave/test/testwave/testfiles/t_9_014.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_014.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_015.cpp b/libs/wave/test/testwave/testfiles/t_9_015.cpp
index ce2ac91b4b..3c1c21255d 100644
--- a/libs/wave/test/testwave/testfiles/t_9_015.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_015.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_016.cpp b/libs/wave/test/testwave/testfiles/t_9_016.cpp
index 66420d9c7a..3b41066016 100644
--- a/libs/wave/test/testwave/testfiles/t_9_016.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_016.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_016.hpp b/libs/wave/test/testwave/testfiles/t_9_016.hpp
index 6a4724bb92..ef3aaa2494 100644
--- a/libs/wave/test/testwave/testfiles/t_9_016.hpp
+++ b/libs/wave/test/testwave/testfiles/t_9_016.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_017.cpp b/libs/wave/test/testwave/testfiles/t_9_017.cpp
index 4466b98d10..bb1c431dc5 100644
--- a/libs/wave/test/testwave/testfiles/t_9_017.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_017.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_018.cpp b/libs/wave/test/testwave/testfiles/t_9_018.cpp
index c6c95297f2..a6d3818a9e 100644
--- a/libs/wave/test/testwave/testfiles/t_9_018.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_018.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_019.cpp b/libs/wave/test/testwave/testfiles/t_9_019.cpp
index a162e71d43..1141aa9e95 100644
--- a/libs/wave/test/testwave/testfiles/t_9_019.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_019.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_019.hpp b/libs/wave/test/testwave/testfiles/t_9_019.hpp
index 843fedf763..39685a26bc 100644
--- a/libs/wave/test/testwave/testfiles/t_9_019.hpp
+++ b/libs/wave/test/testwave/testfiles/t_9_019.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_020.cpp b/libs/wave/test/testwave/testfiles/t_9_020.cpp
index 0d02a61b38..f78ef776b6 100644
--- a/libs/wave/test/testwave/testfiles/t_9_020.cpp
+++ b/libs/wave/test/testwave/testfiles/t_9_020.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testfiles/t_9_021.cpp b/libs/wave/test/testwave/testfiles/t_9_021.cpp
new file mode 100644
index 0000000000..84b0e33142
--- /dev/null
+++ b/libs/wave/test/testwave/testfiles/t_9_021.cpp
@@ -0,0 +1,24 @@
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+ http://www.boost.org/
+
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying file
+ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+// Verifies that preprocessing directives are properly recognized only if
+// the '#' is really the first character on a line before macro expansion.
+// See http://www.open-std.org/jtc1/sc22/wg14/docs/rr/dr_144.html.
+
+#define EMPTY
+EMPTY # define M 1
+
+//R #line 15 "t_9_021.cpp"
+//R #define M 1
+
+//H 10: t_9_021.cpp(14): #define
+//H 08: t_9_021.cpp(14): EMPTY=
+//H 01: t_9_021.cpp(14): EMPTY
+//H 02:
+//H 03: _
diff --git a/libs/wave/test/testwave/testfiles/t_9_022.cpp b/libs/wave/test/testwave/testfiles/t_9_022.cpp
new file mode 100644
index 0000000000..119018e299
--- /dev/null
+++ b/libs/wave/test/testwave/testfiles/t_9_022.cpp
@@ -0,0 +1,18 @@
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+ http://www.boost.org/
+
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying file
+ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+// Verifies that preprocessing directives are properly recognized only if
+// the '#' is really the first character on a line before macro expansion.
+// See http://www.open-std.org/jtc1/sc22/wg14/docs/rr/dr_144.html.
+
+#define EMPTY
+# EMPTY define M 1
+
+//E t_9_022.cpp(15): error: ill formed preprocessor directive: # EMPTY define M 1
+
diff --git a/libs/wave/test/testwave/testfiles/t_9_023.cpp b/libs/wave/test/testwave/testfiles/t_9_023.cpp
new file mode 100644
index 0000000000..de6c4565f3
--- /dev/null
+++ b/libs/wave/test/testwave/testfiles/t_9_023.cpp
@@ -0,0 +1,31 @@
+/*=============================================================================
+ Boost.Wave: A Standard compliant C++ preprocessor library
+ http://www.boost.org/
+
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
+ Software License, Version 1.0. (See accompanying file
+ LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+=============================================================================*/
+
+// Verifies that preprocessing directives are properly recognized only if
+// the '#' is really the first character on a line before macro expansion.
+// See http://www.open-std.org/jtc1/sc22/wg14/docs/rr/dr_144.html.
+
+#define _C_STD_BEGIN
+
+_C_STD_BEGIN
+#ifndef _M_CEE_PURE
+_C_LIB_DECL
+#endif
+
+//R #line 18 "t_9_023.cpp"
+//R _C_LIB_DECL
+
+//H 10: t_9_023.cpp(14): #define
+//H 08: t_9_023.cpp(14): _C_STD_BEGIN=
+//H 01: t_9_023.cpp(14): _C_STD_BEGIN
+//H 02:
+//H 03: _
+//H 10: t_9_023.cpp(17): #ifndef
+//H 11: t_9_023.cpp(17): #ifndef _M_CEE_PURE: 0
+//H 10: t_9_023.cpp(19): #endif
diff --git a/libs/wave/test/testwave/testfiles/test.cfg b/libs/wave/test/testwave/testfiles/test.cfg
index 258345aee6..0f764683e3 100644
--- a/libs/wave/test/testwave/testfiles/test.cfg
+++ b/libs/wave/test/testwave/testfiles/test.cfg
@@ -74,6 +74,7 @@ t_2_018.cpp
t_2_019.cpp
t_2_020.cpp
t_2_021.cpp
+t_2_022.cpp
#
# t_3: Predefined macros
@@ -235,3 +236,6 @@ t_9_017.cpp
t_9_018.cpp
t_9_019.cpp
t_9_020.cpp
+t_9_021.cpp
+t_9_022.cpp
+t_9_023.cpp
diff --git a/libs/wave/test/testwave/testwave.cpp b/libs/wave/test/testwave/testwave.cpp
index 70fdfdccd1..e5e481d0de 100644
--- a/libs/wave/test/testwave/testwave.cpp
+++ b/libs/wave/test/testwave/testwave.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
@@ -30,18 +30,18 @@ namespace fs = boost::filesystem;
///////////////////////////////////////////////////////////////////////////////
//
-// The debuglevel command line parameter is used to control the amount of text
-// printed by the testwave application.
+// The debuglevel command line parameter is used to control the amount of text
+// printed by the testwave application.
//
// level 0: prints nothing except serious failures preventing the testwave
-// executable from running, the return value of the executable is
+// executable from running, the return value of the executable is
// equal to the number of failed tests
// level 1: prints a short summary only
// level 2: prints the names of the failed tests only
// level 3: prints the expected and real result for failed tests
// level 4: prints the outcome of every test
// level 5: prints the real result even for succeeded tests
-// level 6: prints the real hooks information recorded, even for succeeded
+// level 6: prints the real hooks information recorded, even for succeeded
// tests
//
// level 9: prints information about almost everything
@@ -51,7 +51,7 @@ namespace fs = boost::filesystem;
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
-int
+int
main(int argc, char *argv[])
{
int error_count = 0;
@@ -63,9 +63,9 @@ main(int argc, char *argv[])
("help,h", "print out program usage (this message)")
("version,v", "print the version number")
("copyright,c", "print out the copyright statement")
- ("config-file", po::value<std::vector<std::string> >()->composing(),
+ ("config-file", po::value<std::vector<std::string> >()->composing(),
"specify a config file (alternatively: @arg)")
- ("hooks", po::value<bool>()->default_value(true),
+ ("hooks", po::value<bool>()->default_value(true),
"test preprocessing hooks")
("debug,d", po::value<int>(), "set the debug level (0...9)")
;
@@ -74,9 +74,9 @@ main(int argc, char *argv[])
// recognize positional arguments, will not be shown to the user.
po::options_description desc_hidden("Hidden options");
desc_hidden.add_options()
- ("input", po::value<std::vector<std::string> >()->composing(),
+ ("input", po::value<std::vector<std::string> >()->composing(),
"inputfile")
- ;
+ ;
// this is the test application object
po::variables_map vm;
@@ -89,13 +89,13 @@ main(int argc, char *argv[])
// parse command line
// (the (int) cast is to make the True64 compiler happy)
using namespace boost::program_options::command_line_style;
- po::parsed_options opts(po::parse_command_line(argc, argv,
+ po::parsed_options opts(po::parse_command_line(argc, argv,
cmdline_options, (int)unix_style, cmd_line_utils::at_option_parser));
-
+
po::store(opts, vm);
po::notify(vm);
- // ... act as required
+ // ... act as required
if (vm.count("help")) {
po::options_description desc_help (
"Usage: testwave [options] [@config-file(s)] file(s)");
@@ -103,21 +103,21 @@ main(int argc, char *argv[])
std::cout << desc_help << std::endl;
return 0;
}
-
+
// debug flag
if (vm.count("debug")) {
int debug_level = vm["debug"].as<int>();
if (debug_level < 0 || debug_level > 9) {
- std::cerr
+ std::cerr
<< "testwave: please use an integer in the range [0..9] "
- << "as the parameter to the debug option!"
+ << "as the parameter to the debug option!"
<< std::endl;
}
else {
app.set_debuglevel(debug_level);
}
}
-
+
if (vm.count("version")) {
return app.print_version();
}
@@ -125,89 +125,89 @@ main(int argc, char *argv[])
if (vm.count("copyright")) {
return app.print_copyright();
}
-
- // If there is specified at least one config file, parse it and add the
+
+ // If there is specified at least one config file, parse it and add the
// options to the main variables_map
- // Each of the config files is parsed into a separate variables_map to
+ // Each of the config files is parsed into a separate variables_map to
// allow correct paths handling.
int input_count = 0;
if (vm.count("config-file")) {
- std::vector<std::string> const &cfg_files =
+ std::vector<std::string> const &cfg_files =
vm["config-file"].as<std::vector<std::string> >();
if (9 == app.get_debuglevel()) {
- std::cerr << "found " << (unsigned)cfg_files.size()
+ std::cerr << "found " << (unsigned)cfg_files.size()
<< " config-file arguments" << std::endl;
}
-
+
std::vector<std::string>::const_iterator end = cfg_files.end();
- for (std::vector<std::string>::const_iterator cit = cfg_files.begin();
+ for (std::vector<std::string>::const_iterator cit = cfg_files.begin();
cit != end; ++cit)
{
if (9 == app.get_debuglevel()) {
std::cerr << "reading config_file: " << *cit << std::endl;
}
-
+
// parse a single config file and store the results, config files
- // may only contain --input and positional arguments
+ // may only contain --input and positional arguments
po::variables_map cvm;
- if (!cmd_line_utils::read_config_file(app.get_debuglevel(),
- *cit, desc_hidden, cvm))
+ if (!cmd_line_utils::read_config_file(app.get_debuglevel(),
+ *cit, desc_hidden, cvm))
{
if (9 == app.get_debuglevel()) {
- std::cerr << "failed to read config_file: " << *cit
+ std::cerr << "failed to read config_file: " << *cit
<< std::endl;
}
++config_file_error_count;
}
-
+
if (9 == app.get_debuglevel()) {
- std::cerr << "succeeded to read config_file: " << *cit
+ std::cerr << "succeeded to read config_file: " << *cit
<< std::endl;
}
-
+
// correct the paths parsed into this variables_map
if (cvm.count("input")) {
- std::vector<std::string> const &infiles =
+ std::vector<std::string> const &infiles =
cvm["input"].as<std::vector<std::string> >();
if (9 == app.get_debuglevel()) {
- std::cerr << "found " << (unsigned)infiles.size()
+ std::cerr << "found " << (unsigned)infiles.size()
<< " entries" << std::endl;
}
std::vector<std::string>::const_iterator iend = infiles.end();
- for (std::vector<std::string>::const_iterator iit = infiles.begin();
+ for (std::vector<std::string>::const_iterator iit = infiles.begin();
iit != iend; ++iit)
{
// correct the file name (pre-pend the config file path)
fs::path cfgpath = boost::wave::util::complete_path(
- boost::wave::util::create_path(*cit),
+ boost::wave::util::create_path(*cit),
boost::wave::util::current_path());
- fs::path filepath =
- boost::wave::util::branch_path(cfgpath) /
+ fs::path filepath =
+ boost::wave::util::branch_path(cfgpath) /
boost::wave::util::create_path(*iit);
if (9 == app.get_debuglevel()) {
std::cerr << std::string(79, '-') << std::endl;
- std::cerr << "executing test: "
+ std::cerr << "executing test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
// execute this unit test case
if (!app.test_a_file(
- boost::wave::util::native_file_string(filepath)))
+ boost::wave::util::native_file_string(filepath)))
{
if (9 == app.get_debuglevel()) {
- std::cerr << "failed to execute test: "
+ std::cerr << "failed to execute test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
++error_count;
}
else if (9 == app.get_debuglevel()) {
- std::cerr << "succeeded to execute test: "
+ std::cerr << "succeeded to execute test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
@@ -226,14 +226,14 @@ main(int argc, char *argv[])
// extract the arguments from the parsed command line
std::vector<po::option> arguments;
- std::remove_copy_if(opts.options.begin(), opts.options.end(),
+ std::remove_copy_if(opts.options.begin(), opts.options.end(),
std::back_inserter(arguments), cmd_line_utils::is_argument());
if (9 == app.get_debuglevel()) {
- std::cerr << "found " << (unsigned)arguments.size()
+ std::cerr << "found " << (unsigned)arguments.size()
<< " arguments" << std::endl;
}
-
+
// iterate over remaining arguments
std::vector<po::option>::const_iterator arg_end = arguments.end();
for (std::vector<po::option>::const_iterator arg = arguments.begin();
@@ -243,22 +243,22 @@ main(int argc, char *argv[])
if (9 == app.get_debuglevel()) {
std::cerr << std::string(79, '-') << std::endl;
- std::cerr << "executing test: "
+ std::cerr << "executing test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
- if (!app.test_a_file(boost::wave::util::native_file_string(filepath)))
+ if (!app.test_a_file(boost::wave::util::native_file_string(filepath)))
{
if (9 == app.get_debuglevel()) {
- std::cerr << "failed to execute test: "
+ std::cerr << "failed to execute test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
++error_count;
}
else if (9 == app.get_debuglevel()) {
- std::cerr << "succeeded to execute test: "
+ std::cerr << "succeeded to execute test: "
<< boost::wave::util::native_file_string(filepath)
<< std::endl;
}
@@ -271,18 +271,18 @@ main(int argc, char *argv[])
// print a message if no input is given
if (0 == input_count) {
- std::cerr
- << "testwave: no input file specified, "
- << "try --help to get a hint."
+ std::cerr
+ << "testwave: no input file specified, "
+ << "try --help to get a hint."
<< std::endl;
return (std::numeric_limits<int>::max)() - 3;
}
else if (app.get_debuglevel() > 0) {
- std::cout
- << "testwave: " << input_count-error_count
+ std::cout
+ << "testwave: " << input_count-error_count
<< " of " << input_count << " test(s) succeeded";
if (0 != error_count) {
- std::cout
+ std::cout
<< " (" << error_count << " test(s) failed)";
}
std::cout << "." << std::endl;
diff --git a/libs/wave/test/testwave/testwave_app.cpp b/libs/wave/test/testwave/testwave_app.cpp
index 09e5ab967a..a6cb0e673a 100644
--- a/libs/wave/test/testwave/testwave_app.cpp
+++ b/libs/wave/test/testwave/testwave_app.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
@@ -24,7 +24,7 @@
#include <boost/filesystem/operations.hpp>
#include <boost/detail/workaround.hpp>
-// include Wave
+// include Wave
// always use new hooks
#define BOOST_WAVE_USE_DEPRECIATED_PREPROCESSING_HOOKS 0
@@ -41,10 +41,10 @@
#include "collect_hooks_information.hpp"
# ifdef BOOST_NO_STDC_NAMESPACE
-namespace std
-{
+namespace std
+{
using ::asctime; using ::gmtime; using ::localtime;
- using ::difftime; using ::time; using ::tm; using ::mktime; using ::system;
+ using ::difftime; using ::time; using ::tm; using ::mktime; using ::system;
}
# endif
@@ -61,8 +61,8 @@ namespace {
///////////////////////////////////////////////////////////////////////////
template <typename Iterator>
- inline bool
- handle_next_token(Iterator &it, Iterator const& end,
+ inline bool
+ handle_next_token(Iterator &it, Iterator const& end,
std::string &result)
{
typedef typename Iterator::value_type token_type;
@@ -87,7 +87,7 @@ namespace {
///////////////////////////////////////////////////////////////////////////
template <typename Iterator>
- bool handle_line_directive(Iterator &it, Iterator const& end,
+ bool handle_line_directive(Iterator &it, Iterator const& end,
std::string &result)
{
typedef typename Iterator::value_type token_type;
@@ -102,7 +102,7 @@ namespace {
}
using boost::wave::util::impl::unescape_lit;
-
+
token_type filename = *it;
string_type name = filename.get_value();
@@ -132,17 +132,17 @@ namespace {
///////////////////////////////////////////////////////////////////////////
//
-// This function compares the real result and the expected one but first
-// replaces all occurrences in the expected result of
+// This function compares the real result and the expected one but first
+// replaces all occurrences in the expected result of
// $E: to the result of preprocessing the given expression
-// $F: to the passed full filepath
+// $F: to the passed full filepath
// $P: to the full path
// $B: to the full path (same as $P, but using forward slash '/' on Windows)
// $V: to the current Boost version number
//
///////////////////////////////////////////////////////////////////////////
-bool
-testwave_app::got_expected_result(std::string const& filename,
+bool
+testwave_app::got_expected_result(std::string const& filename,
std::string const& result, std::string& expected)
{
using boost::wave::util::impl::escape_lit;
@@ -159,31 +159,31 @@ testwave_app::got_expected_result(std::string const& filename,
if ('(' == expected[pos1+2]) {
std::size_t p = expected.find_first_of(")", pos1+1);
if (std::string::npos == p) {
- std::cerr
+ std::cerr
<< "testwave: unmatched parenthesis in $E"
" directive" << std::endl;
return false;
}
std::string source = expected.substr(pos1+3, p-pos1-3);
std::string result, error, hooks;
- bool pp_result = preprocess_file(filename, source,
+ bool pp_result = preprocess_file(filename, source,
result, error, hooks, true);
if (!pp_result) {
- std::cerr
- << "testwave: preprocessing error in $E directive: "
+ std::cerr
+ << "testwave: preprocessing error in $E directive: "
<< error << std::endl;
return false;
}
- full_result = full_result +
+ full_result = full_result +
expected.substr(pos, pos1-pos) + result;
- pos1 = expected.find_first_of ("$",
+ pos1 = expected.find_first_of ("$",
pos = pos1 + 4 + source.size());
}
}
break;
case 'F': // insert base file name
- full_result = full_result +
+ full_result = full_result +
expected.substr(pos, pos1-pos) + escape_lit(filename);
pos1 = expected.find_first_of ("$", pos = pos1 + 2);
break;
@@ -193,7 +193,7 @@ testwave_app::got_expected_result(std::string const& filename,
{
fs::path fullpath (
boost::wave::util::complete_path(
- boost::wave::util::create_path(filename),
+ boost::wave::util::create_path(filename),
boost::wave::util::current_path())
);
@@ -201,13 +201,13 @@ testwave_app::got_expected_result(std::string const& filename,
// the $P(basename) syntax is used
std::size_t p = expected.find_first_of(")", pos1+1);
if (std::string::npos == p) {
- std::cerr
+ std::cerr
<< "testwave: unmatched parenthesis in $P"
" directive" << std::endl;
return false;
}
std::string base = expected.substr(pos1+3, p-pos1-3);
- fullpath = boost::wave::util::branch_path(fullpath) /
+ fullpath = boost::wave::util::branch_path(fullpath) /
boost::wave::util::create_path(base);
full_result += expected.substr(pos, pos1-pos);
if ('P' == expected[pos1+1]) {
@@ -233,7 +233,7 @@ testwave_app::got_expected_result(std::string const& filename,
#endif
full_result += escape_lit(p);
}
- pos1 = expected.find_first_of ("$",
+ pos1 = expected.find_first_of ("$",
pos = pos1 + 4 + base.size());
}
else {
@@ -257,11 +257,11 @@ testwave_app::got_expected_result(std::string const& filename,
break;
case 'R': // insert relative file name
- case 'S': // same as 'R', but forward slashes on Windows
+ case 'S': // same as 'R', but forward slashes on Windows
{
fs::path relpath;
boost::wave::util::as_relative_to(
- boost::wave::util::create_path(filename),
+ boost::wave::util::create_path(filename),
boost::wave::util::current_path(),
relpath);
@@ -269,13 +269,13 @@ testwave_app::got_expected_result(std::string const& filename,
// the $R(basename) syntax is used
std::size_t p = expected.find_first_of(")", pos1+1);
if (std::string::npos == p) {
- std::cerr
+ std::cerr
<< "testwave: unmatched parenthesis in $R"
" directive" << std::endl;
return false;
}
std::string base = expected.substr(pos1+3, p-pos1-3);
- relpath = boost::wave::util::branch_path(relpath) /
+ relpath = boost::wave::util::branch_path(relpath) /
boost::wave::util::create_path(base);
full_result += expected.substr(pos, pos1-pos);
if ('R' == expected[pos1+1]) {
@@ -293,7 +293,7 @@ testwave_app::got_expected_result(std::string const& filename,
#endif
full_result += escape_lit(p);
}
- pos1 = expected.find_first_of ("$",
+ pos1 = expected.find_first_of ("$",
pos = pos1 + 4 + base.size());
}
else {
@@ -317,11 +317,11 @@ testwave_app::got_expected_result(std::string const& filename,
break;
case 'V': // insert Boost version
- full_result = full_result +
+ full_result = full_result +
expected.substr(pos, pos1-pos) + BOOST_LIB_VERSION;
pos1 = expected.find_first_of ("$", pos = pos1 + 2);
break;
-
+
default:
full_result = full_result +
expected.substr(pos, pos1-pos);
@@ -342,58 +342,60 @@ testwave_app::got_expected_result(std::string const& filename,
///////////////////////////////////////////////////////////////////////////////
testwave_app::testwave_app(po::variables_map const& vm)
-: debuglevel(1), desc_options("Preprocessor configuration options"),
+: debuglevel(1), desc_options("Preprocessor configuration options"),
global_vm(vm)
{
desc_options.add_options()
- ("include,I", po::value<cmd_line_utils::include_paths>()->composing(),
+ ("include,I", po::value<cmd_line_utils::include_paths>()->composing(),
"specify an additional include directory")
- ("sysinclude,S", po::value<std::vector<std::string> >()->composing(),
+ ("sysinclude,S", po::value<std::vector<std::string> >()->composing(),
"specify an additional system include directory")
- ("define,D", po::value<std::vector<std::string> >()->composing(),
+ ("forceinclude,F", po::value<std::vector<std::string> >()->composing(),
+ "force inclusion of the given file")
+ ("define,D", po::value<std::vector<std::string> >()->composing(),
"specify a macro to define (as macro[=[value]])")
- ("predefine,P", po::value<std::vector<std::string> >()->composing(),
+ ("predefine,P", po::value<std::vector<std::string> >()->composing(),
"specify a macro to predefine (as macro[=[value]])")
- ("undefine,U", po::value<std::vector<std::string> >()->composing(),
+ ("undefine,U", po::value<std::vector<std::string> >()->composing(),
"specify a macro to undefine")
- ("nesting,n", po::value<int>(),
+ ("nesting,n", po::value<int>(),
"specify a new maximal include nesting depth")
("long_long", "enable long long support in C++ mode")
("preserve", "preserve comments")
#if BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS != 0
("variadics", "enable certain C99 extensions in C++ mode")
("c99", "enable C99 mode (implies --variadics)")
-#endif
+#endif
#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
("noguard,G", "disable include guard detection")
#endif
("skipped_token_hooks", "record skipped_token hook calls")
#if BOOST_WAVE_SUPPORT_CPP0X != 0
- ("c++0x", "enable C99 mode (implies --variadics and --long_long)")
+ ("c++11", "enable C++11 mode (implies --variadics and --long_long)")
#endif
;
}
///////////////////////////////////////////////////////////////////////////////
//
-// Test the given file (i.e. preprocess the file and compare the result
+// Test the given file (i.e. preprocess the file and compare the result
// against the embedded 'R' comments, if an error occurs compare the error
// message against the given 'E' comments, if no error occurred, compare the
// generated hooks result against the given 'H' comments).
//
///////////////////////////////////////////////////////////////////////////////
-bool
+bool
testwave_app::test_a_file(std::string filename)
{
// read the input file into a string
std::string instr;
- if (!read_file(filename, instr))
+ if (!read_file(filename, instr))
return false; // error was reported already
bool test_hooks = true;
if (global_vm.count("hooks"))
test_hooks = variables_map_as(global_vm["hooks"], (bool *)NULL);
-
+
// extract expected output, preprocess the data and compare results
std::string expected, expected_hooks;
if (extract_expected_output(filename, instr, expected, expected_hooks)) {
@@ -407,21 +409,21 @@ testwave_app::test_a_file(std::string filename)
if (!extract_special_information(filename, instr, 'E', expected_error))
return false;
- if (!expected_error.empty() &&
+ if (!expected_error.empty() &&
!got_expected_result(filename, error, expected_error))
{
// we expected an error but got none (or a different one)
if (debuglevel > 2) {
- std::cerr
+ std::cerr
<< filename << ": failed" << std::endl
<< "result: " << std::endl << result << std::endl;
if (!error.empty()) {
- std::cerr << "expected result: " << std::endl
+ std::cerr << "expected result: " << std::endl
<< expected << std::endl;
}
if (!expected_error.empty()) {
- std::cerr << "expected error: " << std::endl
+ std::cerr << "expected error: " << std::endl
<< expected_error << std::endl;
}
}
@@ -433,7 +435,7 @@ testwave_app::test_a_file(std::string filename)
else if (!got_expected_result(filename, result, expected)) {
// no preprocessing error encountered
if (debuglevel > 2) {
- std::cerr
+ std::cerr
<< filename << ": failed" << std::endl
<< "result: " << std::endl << result << std::endl
<< "expected: " << std::endl << expected << std::endl;
@@ -446,13 +448,13 @@ testwave_app::test_a_file(std::string filename)
else {
// preprocessing succeeded, check hook information, if appropriate
if (test_hooks && !expected_hooks.empty() &&
- !got_expected_result(filename, hooks, expected_hooks))
+ !got_expected_result(filename, hooks, expected_hooks))
{
if (debuglevel > 2) {
std::cerr << filename << ": failed" << std::endl
- << "hooks result: " << std::endl << hooks
+ << "hooks result: " << std::endl << hooks
<< std::endl;
- std::cerr << "expected hooks result: " << std::endl
+ std::cerr << "expected hooks result: " << std::endl
<< expected_hooks << std::endl;
}
else if (debuglevel > 1) {
@@ -461,17 +463,17 @@ testwave_app::test_a_file(std::string filename)
retval = false;
}
}
-
+
// print success message, if appropriate
if (retval) {
if (debuglevel > 5) {
- std::cerr
+ std::cerr
<< filename << ": succeeded" << std::endl
<< "result: " << std::endl << result << std::endl
<< "hooks result: " << std::endl << hooks << std::endl;
}
else if (debuglevel > 4) {
- std::cerr
+ std::cerr
<< filename << ": succeeded" << std::endl
<< "result: " << std::endl << result << std::endl;
}
@@ -481,21 +483,21 @@ testwave_app::test_a_file(std::string filename)
printed_result = true;
}
}
-
+
if (!pp_result) {
// there was a preprocessing error, was it expected?
std::string expected_error;
if (!extract_special_information(filename, instr, 'E', expected_error))
return false;
-
+
if (!got_expected_result(filename, error, expected_error)) {
// the error was unexpected
if (debuglevel > 2) {
- std::cerr
+ std::cerr
<< filename << ": failed" << std::endl;
if (!expected_error.empty()) {
- std::cerr
+ std::cerr
<< "error result: " << std::endl << error << std::endl
<< "expected error: " << std::endl
<< expected_error << std::endl;
@@ -509,24 +511,24 @@ testwave_app::test_a_file(std::string filename)
}
retval = false;
}
-
+
if (retval) {
if (debuglevel > 5) {
- std::cerr
- << filename << ": succeeded (caught expected error)"
- << std::endl << "error result: " << std::endl << error
+ std::cerr
+ << filename << ": succeeded (caught expected error)"
+ << std::endl << "error result: " << std::endl << error
<< std::endl;
-
+
if (!printed_result) {
- std::cerr
- << "hooks result: " << std::endl << hooks
+ std::cerr
+ << "hooks result: " << std::endl << hooks
<< std::endl;
}
}
else if (debuglevel > 4) {
- std::cerr
- << filename << ": succeeded (caught expected error)"
- << std::endl << "error result: " << std::endl << error
+ std::cerr
+ << filename << ": succeeded (caught expected error)"
+ << std::endl << "error result: " << std::endl << error
<< std::endl;
}
else if (debuglevel > 3) {
@@ -538,7 +540,7 @@ testwave_app::test_a_file(std::string filename)
return retval;
}
else {
- std::cerr
+ std::cerr
<< filename << ": no information about expected results found"
<< std::endl;
}
@@ -550,13 +552,13 @@ testwave_app::test_a_file(std::string filename)
// print the current version of this program
//
///////////////////////////////////////////////////////////////////////////////
-int
+int
testwave_app::print_version()
{
// get time of last compilation of this file
boost::wave::util::time_conversion_helper compilation_time(__DATE__ " " __TIME__);
-// calculate the number of days since Feb 12 2005
+// calculate the number of days since Feb 12 2005
// (the day the testwave project was started)
std::tm first_day;
@@ -566,11 +568,11 @@ std::tm first_day;
first_day.tm_mday = 12; // 12
first_day.tm_year = 105; // 2005
-long seconds = long(std::difftime(compilation_time.get_time(),
+long seconds = long(std::difftime(compilation_time.get_time(),
std::mktime(&first_day)));
- std::cout
- << TESTWAVE_VERSION_MAJOR << '.'
+ std::cout
+ << TESTWAVE_VERSION_MAJOR << '.'
<< TESTWAVE_VERSION_MINOR << '.'
<< TESTWAVE_VERSION_SUBMINOR << '.'
<< seconds/(3600*24) // get number of days from seconds
@@ -583,7 +585,7 @@ long seconds = long(std::difftime(compilation_time.get_time(),
// print the copyright statement
//
///////////////////////////////////////////////////////////////////////////////
-int
+int
testwave_app::print_copyright()
{
char const *copyright[] = {
@@ -591,15 +593,15 @@ testwave_app::print_copyright()
"Testwave: A test driver for the Boost.Wave C++ preprocessor library",
"http://www.boost.org/",
"",
- "Copyright (c) 2001-2011 Hartmut Kaiser, Distributed under the Boost",
+ "Copyright (c) 2001-2012 Hartmut Kaiser, Distributed under the Boost",
"Software License, Version 1.0. (See accompanying file",
"LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)",
0
};
-
+
for (int i = 0; 0 != copyright[i]; ++i)
std::cout << copyright[i] << std::endl;
-
+
return 0; // exit app
}
@@ -608,36 +610,36 @@ testwave_app::print_copyright()
// Read the given file into a string
//
///////////////////////////////////////////////////////////////////////////////
-bool
+bool
testwave_app::read_file(std::string const& filename, std::string& instr)
{
// open the given file and report error, if appropriate
std::ifstream instream(filename.c_str());
if (!instream.is_open()) {
- std::cerr << "testwave: could not open input file: "
+ std::cerr << "testwave: could not open input file: "
<< filename << std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "read_file: succeeded to open input file: "
+ std::cerr << "read_file: succeeded to open input file: "
<< filename << std::endl;
}
instream.unsetf(std::ios::skipws);
// read the input file into a string
-
+
#if defined(BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS)
// this is known to be very slow for large files on some systems
std::copy (std::istream_iterator<char>(instream),
- std::istream_iterator<char>(),
+ std::istream_iterator<char>(),
std::inserter(instr, instr.end()));
#else
instr = std::string(std::istreambuf_iterator<char>(instream.rdbuf()),
std::istreambuf_iterator<char>());
-#endif
-
+#endif
+
if (9 == debuglevel) {
- std::cerr << "read_file: succeeded to read input file: "
+ std::cerr << "read_file: succeeded to read input file: "
<< filename << std::endl;
}
return true;
@@ -649,7 +651,7 @@ namespace {
std::string const& trim_whitespace(std::string& value)
{
std::string::size_type first = value.find_first_not_of(" \t");
- if (std::string::npos == first)
+ if (std::string::npos == first)
value.clear();
else {
std::string::size_type last = value.find_last_not_of(" \t");
@@ -665,12 +667,12 @@ namespace {
// Extract special information from comments marked with the given letter
//
///////////////////////////////////////////////////////////////////////////////
-bool
-testwave_app::extract_special_information(std::string const& filename,
+bool
+testwave_app::extract_special_information(std::string const& filename,
std::string const& instr, char flag, std::string& content)
{
if (9 == debuglevel) {
- std::cerr << "extract_special_information: extracting special information ('"
+ std::cerr << "extract_special_information: extracting special information ('"
<< flag << "') from input file: " << filename << std::endl;
}
@@ -678,15 +680,15 @@ testwave_app::extract_special_information(std::string const& filename,
typedef boost::wave::cpplexer::lex_token<> token_type;
typedef boost::wave::cpplexer::lex_iterator<token_type> lexer_type;
typedef token_type::position_type position_type;
-
- boost::wave::language_support const lang_opts =
+
+ boost::wave::language_support const lang_opts =
(boost::wave::language_support)(
- boost::wave::support_option_variadics |
+ boost::wave::support_option_variadics |
boost::wave::support_option_long_long |
boost::wave::support_option_no_character_validation |
boost::wave::support_option_convert_trigraphs |
boost::wave::support_option_insert_whitespace);
-
+
position_type pos(filename.c_str());
lexer_type it = lexer_type(instr.begin(), instr.end(), pos, lang_opts);
lexer_type end = lexer_type();
@@ -702,29 +704,29 @@ testwave_app::extract_special_information(std::string const& filename,
if (value.size() > 3 && '(' == value[3]) {
std::size_t p = value.find_first_of(")");
if (std::string::npos == p) {
- std::cerr
+ std::cerr
<< "testwave: missing closing parenthesis in '"
<< flag << "()' directive" << std::endl;
return false;
}
std::string source = value.substr(4, p-4);
std::string result, error, hooks;
- bool pp_result = preprocess_file(filename, source,
+ bool pp_result = preprocess_file(filename, source,
result, error, hooks, true);
if (!pp_result) {
- std::cerr
+ std::cerr
<< "testwave: preprocessing error in '" << flag
<< "()' directive: " << error << std::endl;
return false;
}
-
- // include this text into the extracted information
+
+ // include this text into the extracted information
// only if the result is not zero
using namespace std; // some system have atoi in namespace std
if (0 != atoi(result.c_str())) {
std::string thiscontent(value.substr(p+1));
if (9 == debuglevel) {
- std::cerr << "extract_special_information: extracted: "
+ std::cerr << "extract_special_information: extracted: "
<< thiscontent << std::endl;
}
trim_whitespace(thiscontent);
@@ -734,7 +736,7 @@ testwave_app::extract_special_information(std::string const& filename,
else {
std::string thiscontent(value.substr(3, value.size()-5));
if (9 == debuglevel) {
- std::cerr << "extract_special_information: extracted: "
+ std::cerr << "extract_special_information: extracted: "
<< thiscontent << std::endl;
}
trim_whitespace(thiscontent);
@@ -748,29 +750,29 @@ testwave_app::extract_special_information(std::string const& filename,
if (value.size() > 3 && '(' == value[3]) {
std::size_t p = value.find_first_of(")");
if (std::string::npos == p) {
- std::cerr
+ std::cerr
<< "testwave: missing closing parenthesis in '"
<< flag << "()' directive" << std::endl;
return false;
}
std::string source = value.substr(4, p-4);
std::string result, error, hooks;
- bool pp_result = preprocess_file(filename, source,
+ bool pp_result = preprocess_file(filename, source,
result, error, hooks, true);
if (!pp_result) {
- std::cerr
+ std::cerr
<< "testwave: preprocessing error in '" << flag
<< "()' directive: " << error << std::endl;
return false;
}
-
- // include this text into the extracted information
+
+ // include this text into the extracted information
// only if the result is not zero
using namespace std; // some system have atoi in namespace std
if (0 != atoi(result.c_str())) {
std::string thiscontent(value.substr((' ' == value[p+1]) ? p+2 : p+1));
if (9 == debuglevel) {
- std::cerr << "extract_special_information: extracted: "
+ std::cerr << "extract_special_information: extracted: "
<< thiscontent << std::endl;
}
trim_whitespace(thiscontent);
@@ -780,7 +782,7 @@ testwave_app::extract_special_information(std::string const& filename,
else {
std::string thiscontent(value.substr((' ' == value[3]) ? 4 : 3));
if (9 == debuglevel) {
- std::cerr << "extract_special_information: extracted: "
+ std::cerr << "extract_special_information: extracted: "
<< thiscontent;
}
trim_whitespace(content);
@@ -792,14 +794,14 @@ testwave_app::extract_special_information(std::string const& filename,
}
catch (boost::wave::cpplexer::lexing_exception const &e) {
// some lexing error
- std::cerr
+ std::cerr
<< e.file_name() << "(" << e.line_no() << "): "
<< e.description() << std::endl;
return false;
}
if (9 == debuglevel) {
- std::cerr << "extract_special_information: succeeded extracting special information ('"
+ std::cerr << "extract_special_information: succeeded extracting special information ('"
<< flag << "')" << std::endl;
}
return true;
@@ -814,8 +816,8 @@ testwave_app::extract_special_information(std::string const& filename,
// through the parameter 'expected'.
//
///////////////////////////////////////////////////////////////////////////////
-inline bool
-testwave_app::extract_expected_output(std::string const& filename,
+inline bool
+testwave_app::extract_expected_output(std::string const& filename,
std::string const& instr, std::string& expected, std::string& expectedhooks)
{
return extract_special_information(filename, instr, 'R', expected) &&
@@ -825,41 +827,41 @@ testwave_app::extract_expected_output(std::string const& filename,
///////////////////////////////////////////////////////////////////////////////
//
// Extracts the required preprocessing options from the given input data and
-// initialises the given Wave context object accordingly.
-// We allow the same (applicable) options to be used as are valid for the wave
+// initialises the given Wave context object accordingly.
+// We allow the same (applicable) options to be used as are valid for the wave
// driver executable.
//
///////////////////////////////////////////////////////////////////////////////
template <typename Context>
-bool
-testwave_app::extract_options(std::string const& filename,
- std::string const& instr, Context& ctx, bool single_line)
+bool
+testwave_app::extract_options(std::string const& filename,
+ std::string const& instr, Context& ctx, bool single_line,
+ po::variables_map& vm)
{
if (9 == debuglevel) {
std::cerr << "extract_options: extracting options" << std::endl;
}
-// extract the required information from the comments flagged by a
+// extract the required information from the comments flagged by a
// capital 'O'
std::string options;
if (!extract_special_information(filename, instr, 'O', options))
return false;
- try {
+ try {
// parse the configuration information into a program_options_description
// object
- po::variables_map local_vm;
- cmd_line_utils::read_config_options(debuglevel, options, desc_options, local_vm);
- initialise_options(ctx, local_vm, single_line);
+ cmd_line_utils::read_config_options(debuglevel, options, desc_options, vm);
+ initialise_options(ctx, vm, single_line);
}
catch (std::exception const &e) {
- std::cerr << filename << ": exception caught: " << e.what()
+ std::cerr << filename << ": exception caught: " << e.what()
<< std::endl;
return false;
}
-
+
if (9 == debuglevel) {
- std::cerr << "extract_options: succeeded extracting options"
+ std::cerr << "extract_options: succeeded extracting options"
<< std::endl;
}
@@ -867,7 +869,7 @@ testwave_app::extract_options(std::string const& filename,
}
template <typename Context>
-bool
+bool
testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
bool single_line)
{
@@ -891,8 +893,8 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
}
ctx.set_language(
boost::wave::language_support(
- boost::wave::support_c99
- | boost::wave::support_option_emit_line_directives
+ boost::wave::support_c99
+ | boost::wave::support_option_emit_line_directives
#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
| boost::wave::support_option_include_guard_detection
#endif
@@ -912,16 +914,16 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
#endif // BOOST_WAVE_SUPPORT_VARIADICS_PLACEMARKERS != 0
#if BOOST_WAVE_SUPPORT_CPP0X
- if (vm.count("c++0x")) {
+ if (vm.count("c++11")) {
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: c++0x" << std::endl;
+ std::cerr << "initialise_options: option: c++11" << std::endl;
}
ctx.set_language(
boost::wave::language_support(
boost::wave::support_cpp0x
- | boost::wave::support_option_convert_trigraphs
- | boost::wave::support_option_long_long
- | boost::wave::support_option_emit_line_directives
+ | boost::wave::support_option_convert_trigraphs
+ | boost::wave::support_option_long_long
+ | boost::wave::support_option_emit_line_directives
#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0
| boost::wave::support_option_include_guard_detection
#endif
@@ -940,7 +942,7 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
}
ctx.set_language(boost::wave::enable_long_long(ctx.get_language()));
}
-
+
// enable preserving comments mode, if appropriate
if (vm.count("preserve")) {
if (9 == debuglevel) {
@@ -949,7 +951,7 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
ctx.set_language(
boost::wave::enable_preserve_comments(ctx.get_language()));
}
-
+
// disable automatic include guard detection
if (vm.count("noguard")) {
if (9 == debuglevel) {
@@ -958,7 +960,7 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
ctx.set_language(
boost::wave::enable_include_guard_detection(ctx.get_language(), false));
}
-
+
// enable trigraph conversion
if (9 == debuglevel) {
std::cerr << "initialise_options: option: convert_trigraphs" << std::endl;
@@ -973,35 +975,35 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
ctx.set_language(boost::wave::enable_single_line(ctx.get_language()));
ctx.set_language(boost::wave::enable_emit_line_directives(ctx.get_language(), false));
}
-
+
// add include directories to the system include search paths
if (vm.count("sysinclude")) {
- std::vector<std::string> const& syspaths =
+ std::vector<std::string> const& syspaths =
variables_map_as(vm["sysinclude"], (std::vector<std::string> *)NULL);
-
+
std::vector<std::string>::const_iterator end = syspaths.end();
- for (std::vector<std::string>::const_iterator cit = syspaths.begin();
+ for (std::vector<std::string>::const_iterator cit = syspaths.begin();
cit != end; ++cit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -S" << *cit
+ std::cerr << "initialise_options: option: -S" << *cit
<< std::endl;
}
ctx.add_sysinclude_path((*cit).c_str());
}
}
-
+
// add include directories to the user include search paths
if (vm.count("include")) {
- cmd_line_utils::include_paths const &ip =
+ cmd_line_utils::include_paths const &ip =
variables_map_as(vm["include"], (cmd_line_utils::include_paths*)NULL);
std::vector<std::string>::const_iterator end = ip.paths.end();
- for (std::vector<std::string>::const_iterator cit = ip.paths.begin();
+ for (std::vector<std::string>::const_iterator cit = ip.paths.begin();
cit != end; ++cit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -I" << *cit
+ std::cerr << "initialise_options: option: -I" << *cit
<< std::endl;
}
ctx.add_include_path((*cit).c_str());
@@ -1014,46 +1016,46 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
}
ctx.set_sysinclude_delimiter();
}
-
+
// add system include directories to the include path
std::vector<std::string>::const_iterator sysend = ip.syspaths.end();
- for (std::vector<std::string>::const_iterator syscit = ip.syspaths.begin();
+ for (std::vector<std::string>::const_iterator syscit = ip.syspaths.begin();
syscit != sysend; ++syscit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -S" << *syscit
+ std::cerr << "initialise_options: option: -S" << *syscit
<< std::endl;
}
ctx.add_sysinclude_path((*syscit).c_str());
}
}
-// add additional defined macros
+// add additional defined macros
if (vm.count("define")) {
- std::vector<std::string> const &macros =
+ std::vector<std::string> const &macros =
variables_map_as(vm["define"], (std::vector<std::string>*)NULL);
std::vector<std::string>::const_iterator end = macros.end();
- for (std::vector<std::string>::const_iterator cit = macros.begin();
+ for (std::vector<std::string>::const_iterator cit = macros.begin();
cit != end; ++cit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -D" << *cit
+ std::cerr << "initialise_options: option: -D" << *cit
<< std::endl;
}
ctx.add_macro_definition(*cit, true);
}
}
-// add additional predefined macros
+// add additional predefined macros
if (vm.count("predefine")) {
- std::vector<std::string> const &predefmacros =
+ std::vector<std::string> const &predefmacros =
variables_map_as(vm["predefine"], (std::vector<std::string>*)NULL);
std::vector<std::string>::const_iterator end = predefmacros.end();
- for (std::vector<std::string>::const_iterator cit = predefmacros.begin();
+ for (std::vector<std::string>::const_iterator cit = predefmacros.begin();
cit != end; ++cit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -P" << *cit
+ std::cerr << "initialise_options: option: -P" << *cit
<< std::endl;
}
ctx.add_macro_definition(*cit, true);
@@ -1062,14 +1064,14 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
// undefine specified macros
if (vm.count("undefine")) {
- std::vector<std::string> const &undefmacros =
+ std::vector<std::string> const &undefmacros =
variables_map_as(vm["undefine"], (std::vector<std::string>*)NULL);
std::vector<std::string>::const_iterator end = undefmacros.end();
- for (std::vector<std::string>::const_iterator cit = undefmacros.begin();
+ for (std::vector<std::string>::const_iterator cit = undefmacros.begin();
cit != end; ++cit)
{
if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -U" << *cit
+ std::cerr << "initialise_options: option: -U" << *cit
<< std::endl;
}
ctx.remove_macro_definition(*cit);
@@ -1080,19 +1082,19 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
if (vm.count("nesting")) {
int max_depth = variables_map_as(vm["nesting"], (int*)NULL);
if (max_depth < 1 || max_depth > 100000) {
- std::cerr << "testwave: bogus maximal include nesting depth: "
+ std::cerr << "testwave: bogus maximal include nesting depth: "
<< max_depth << std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "initialise_options: option: -n" << max_depth
+ std::cerr << "initialise_options: option: -n" << max_depth
<< std::endl;
}
ctx.set_max_include_nesting_depth(max_depth);
}
if (9 == debuglevel) {
- std::cerr << "initialise_options: succeeded to initialize options"
+ std::cerr << "initialise_options: succeeded to initialize options"
<< std::endl;
}
return true;
@@ -1101,7 +1103,7 @@ testwave_app::initialise_options(Context& ctx, po::variables_map const& vm,
///////////////////////////////////////////////////////////////////////////////
// construct a SIZEOF macro definition string and predefine this macro
template <typename Context>
-inline bool
+inline bool
testwave_app::add_sizeof_definition(Context& ctx, char const *name, int value)
{
BOOST_WAVETEST_OSSTREAM strm;
@@ -1109,12 +1111,12 @@ testwave_app::add_sizeof_definition(Context& ctx, char const *name, int value)
std::string macro(BOOST_WAVETEST_GETSTRING(strm));
if (!ctx.add_macro_definition(macro, true)) {
- std::cerr << "testwave: failed to predefine macro: " << macro
+ std::cerr << "testwave: failed to predefine macro: " << macro
<< std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "add_sizeof_definition: predefined macro: " << macro
+ std::cerr << "add_sizeof_definition: predefined macro: " << macro
<< std::endl;
}
return true;
@@ -1122,28 +1124,28 @@ testwave_app::add_sizeof_definition(Context& ctx, char const *name, int value)
// construct a MIN macro definition string and predefine this macro
template <typename T, typename Context>
-inline bool
+inline bool
testwave_app::add_min_definition(Context& ctx, char const *name)
{
BOOST_WAVETEST_OSSTREAM strm;
if (!std::numeric_limits<T>::is_signed) {
- strm << "__TESTWAVE_" << name << "_MIN__="
- << "0x" << std::hex
+ strm << "__TESTWAVE_" << name << "_MIN__="
+ << "0x" << std::hex
<< (std::numeric_limits<T>::min)() << "U";
}
else {
- strm << "__TESTWAVE_" << name << "_MIN__=( "
+ strm << "__TESTWAVE_" << name << "_MIN__=( "
<< (std::numeric_limits<T>::min)()+1 << "-1)";
}
-
+
std::string macro(BOOST_WAVETEST_GETSTRING(strm));
if (!ctx.add_macro_definition(macro, true)) {
- std::cerr << "testwave: failed to predefine macro: " << macro
+ std::cerr << "testwave: failed to predefine macro: " << macro
<< std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "add_min_definition: predefined macro: " << macro
+ std::cerr << "add_min_definition: predefined macro: " << macro
<< std::endl;
}
return true;
@@ -1151,28 +1153,28 @@ testwave_app::add_min_definition(Context& ctx, char const *name)
// construct a MAX macro definition string and predefine this macro
template <typename T, typename Context>
-inline bool
+inline bool
testwave_app::add_max_definition(Context& ctx, char const *name)
{
BOOST_WAVETEST_OSSTREAM strm;
if (!std::numeric_limits<T>::is_signed) {
- strm << "__TESTWAVE_" << name << "_MAX__="
- << "0x" << std::hex
+ strm << "__TESTWAVE_" << name << "_MAX__="
+ << "0x" << std::hex
<< (std::numeric_limits<T>::max)() << "U";
}
else {
- strm << "__TESTWAVE_" << name << "_MAX__="
+ strm << "__TESTWAVE_" << name << "_MAX__="
<< (std::numeric_limits<T>::max)();
}
-
+
std::string macro(BOOST_WAVETEST_GETSTRING(strm));
if (!ctx.add_macro_definition(macro, true)) {
- std::cerr << "testwave: failed to predefine macro: " << macro
+ std::cerr << "testwave: failed to predefine macro: " << macro
<< std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "add_max_definition: predefined macro: " << macro
+ std::cerr << "add_max_definition: predefined macro: " << macro
<< std::endl;
}
return true;
@@ -1180,17 +1182,17 @@ testwave_app::add_max_definition(Context& ctx, char const *name)
// Predefine __TESTWAVE_HAS_STRICT_LEXER__
template <typename Context>
-inline bool
+inline bool
testwave_app::add_strict_lexer_definition(Context& ctx)
{
std::string macro("__TESTWAVE_HAS_STRICT_LEXER__=1");
if (!ctx.add_macro_definition(macro, true)) {
- std::cerr << "testwave: failed to predefine macro: " << macro
+ std::cerr << "testwave: failed to predefine macro: " << macro
<< std::endl;
return false;
}
else if (9 == debuglevel) {
- std::cerr << "add_strict_lexer_definition: predefined macro: " << macro
+ std::cerr << "add_strict_lexer_definition: predefined macro: " << macro
<< std::endl;
}
return true;
@@ -1200,12 +1202,12 @@ testwave_app::add_strict_lexer_definition(Context& ctx)
//
// Add special predefined macros to the context object.
//
-// This adds a lot of macros to the test environment, which allows to adjust
+// This adds a lot of macros to the test environment, which allows to adjust
// the test cases for different platforms.
//
///////////////////////////////////////////////////////////////////////////////
template <typename Context>
-bool
+bool
testwave_app::add_predefined_macros(Context& ctx)
{
// add the __TESTWAVE_SIZEOF_<type>__ macros
@@ -1217,11 +1219,11 @@ testwave_app::add_predefined_macros(Context& ctx)
#endif
!add_sizeof_definition(ctx, "LONG", sizeof(long)))
{
- std::cerr << "testwave: failed to add a predefined macro (SIZEOF)."
+ std::cerr << "testwave: failed to add a predefined macro (SIZEOF)."
<< std::endl;
return false;
}
-
+
// add the __TESTWAVE_<type>_MIN__ macros
if (/*!add_min_definition<char>(ctx, "CHAR") ||*/
/*!add_min_definition<unsigned char>(ctx, "UCHAR") ||*/
@@ -1236,10 +1238,10 @@ testwave_app::add_predefined_macros(Context& ctx)
!add_min_definition<long>(ctx, "LONG") ||
!add_min_definition<unsigned long>(ctx, "ULONG"))
{
- std::cerr << "testwave: failed to add a predefined macro (MIN)."
+ std::cerr << "testwave: failed to add a predefined macro (MIN)."
<< std::endl;
}
-
+
// add the __TESTWAVE_<type>_MAX__ macros
if (/*!add_max_definition<char>(ctx, "CHAR") ||*/
/*!add_max_definition<unsigned char>(ctx, "UCHAR") ||*/
@@ -1254,7 +1256,7 @@ testwave_app::add_predefined_macros(Context& ctx)
!add_max_definition<long>(ctx, "LONG") ||
!add_max_definition<unsigned long>(ctx, "ULONG"))
{
- std::cerr << "testwave: failed to add a predefined macro (MAX)."
+ std::cerr << "testwave: failed to add a predefined macro (MAX)."
<< std::endl;
}
@@ -1267,31 +1269,31 @@ testwave_app::add_predefined_macros(Context& ctx)
///////////////////////////////////////////////////////////////////////////////
//
-// Preprocess the given input data and return the generated output through
+// Preprocess the given input data and return the generated output through
// the parameter 'result'.
//
///////////////////////////////////////////////////////////////////////////////
-bool
-testwave_app::preprocess_file(std::string filename, std::string const& instr,
+bool
+testwave_app::preprocess_file(std::string filename, std::string const& instr,
std::string& result, std::string& error, std::string& hooks,
bool single_line)
{
-// create the wave::context object and initialize it from the file to
+// create the wave::context object and initialize it from the file to
// preprocess (may contain options inside of special comments)
typedef boost::wave::cpplexer::lex_token<> token_type;
typedef boost::wave::cpplexer::lex_iterator<token_type> lexer_type;
typedef boost::wave::context<
std::string::const_iterator, lexer_type,
boost::wave::iteration_context_policies::load_file_to_string,
- collect_hooks_information<token_type> >
+ collect_hooks_information<token_type> >
context_type;
if (9 == debuglevel) {
- std::cerr << "preprocess_file: preprocessing input file: " << filename
+ std::cerr << "preprocess_file: preprocessing input file: " << filename
<< std::endl;
}
- try {
+ try {
// create preprocessing context
context_type ctx(instr.begin(), instr.end(), filename.c_str(),
collect_hooks_information<token_type>(hooks));
@@ -1300,21 +1302,44 @@ testwave_app::preprocess_file(std::string filename, std::string const& instr,
if (!initialise_options(ctx, global_vm, single_line))
return false;
- // extract the options from the input data and initialize the context
- if (!extract_options(filename, instr, ctx, single_line))
+ // extract the options from the input data and initialize the context
+ boost::program_options::variables_map local_vm;
+ if (!extract_options(filename, instr, ctx, single_line, local_vm))
return false;
// add special predefined macros
if (!add_predefined_macros(ctx))
return false;
-
- // preprocess the input, loop over all generated tokens collecting the
- // generated text
+
+ // preprocess the input, loop over all generated tokens collecting the
+ // generated text
+ context_type::iterator_type it = ctx.begin();
context_type::iterator_type end = ctx.end();
- for (context_type::iterator_type it = ctx.begin(); it != end; ++it)
+
+ if (local_vm.count("forceinclude")) {
+ // add the filenames to force as include files in _reverse_ order
+ // the second parameter 'is_last' of the force_include function should
+ // be set to true for the last (first given) file.
+ std::vector<std::string> const &force =
+ local_vm["forceinclude"].as<std::vector<std::string> >();
+ std::vector<std::string>::const_reverse_iterator rend = force.rend();
+ for (std::vector<std::string>::const_reverse_iterator cit = force.rbegin();
+ cit != rend; /**/)
+ {
+ std::string forceinclude(*cit);
+ if (9 == debuglevel) {
+ std::cerr << "preprocess_file: option: forceinclude ("
+ << forceinclude << ")" << std::endl;
+ }
+ it.force_include(forceinclude.c_str(), ++cit == rend);
+ }
+ }
+
+ // perform actual preprocessing
+ for (/**/; it != end; ++it)
{
using namespace boost::wave;
-
+
if (T_PP_LINE == token_id(*it)) {
// special handling of the whole #line directive is required to
// allow correct file name matching
@@ -1322,8 +1347,8 @@ testwave_app::preprocess_file(std::string filename, std::string const& instr,
return false; // unexpected eof
}
else {
- // add the value of the current token
- result = result + (*it).get_value().c_str();
+ // add the value of the current token
+ result = result + (*it).get_value().c_str();
}
}
error.clear();
@@ -1332,10 +1357,10 @@ testwave_app::preprocess_file(std::string filename, std::string const& instr,
// some lexer error
BOOST_WAVETEST_OSSTREAM strm;
std::string filename = e.file_name();
- strm
+ strm
<< handle_filepath(filename) << "(" << e.line_no() << "): "
<< e.description() << std::endl;
-
+
error = BOOST_WAVETEST_GETSTRING(strm);
return false;
}
@@ -1343,16 +1368,16 @@ testwave_app::preprocess_file(std::string filename, std::string const& instr,
// some preprocessing error
BOOST_WAVETEST_OSSTREAM strm;
std::string filename = e.file_name();
- strm
+ strm
<< handle_filepath(filename) << "(" << e.line_no() << "): "
<< e.description() << std::endl;
-
+
error = BOOST_WAVETEST_GETSTRING(strm);
return false;
}
-
+
if (9 == debuglevel) {
- std::cerr << "preprocess_file: succeeded to preprocess input file: "
+ std::cerr << "preprocess_file: succeeded to preprocess input file: "
<< filename << std::endl;
}
diff --git a/libs/wave/test/testwave/testwave_app.hpp b/libs/wave/test/testwave/testwave_app.hpp
index 6450ca3c19..68ab6dbc50 100644
--- a/libs/wave/test/testwave/testwave_app.hpp
+++ b/libs/wave/test/testwave/testwave_app.hpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
@@ -23,25 +23,25 @@ class testwave_app
{
public:
testwave_app(boost::program_options::variables_map const& vm);
-
- // Test the given file (i.e. preprocess the file and compare the result
+
+ // Test the given file (i.e. preprocess the file and compare the result
// against the embedded 'R' comments, if an error occurs compare the error
// message against the given 'E' comments).
bool test_a_file(std::string filename);
-
+
// print the current version of this program
int print_version();
-
+
// print the copyright statement
int print_copyright();
// access the common options used for the command line and the config
// options inside the test files
boost::program_options::options_description const& common_options() const
- {
- return desc_options;
+ {
+ return desc_options;
}
-
+
void set_debuglevel(int debuglevel_)
{
debuglevel = debuglevel_;
@@ -50,67 +50,68 @@ public:
{
return debuglevel;
}
-
+
protected:
// Read the given file into a string
bool read_file(std::string const& filename, std::string& instr);
// Extract special information from comments marked with the given letter
- bool extract_special_information(std::string const& filename,
+ bool extract_special_information(std::string const& filename,
std::string const& instr, char flag, std::string& content);
- // Extract the expected output and expected hooks information from the
+ // Extract the expected output and expected hooks information from the
// given input data.
// The expected output has to be provided inside of special comments which
- // start with a capital 'R' ('H' for the hooks information). All such
+ // start with a capital 'R' ('H' for the hooks information). All such
// comments are concatenated and returned through the parameter 'expected'
// ('expectedhooks' for hooks information).
- bool extract_expected_output(std::string const& filename,
- std::string const& instr, std::string& expected,
+ bool extract_expected_output(std::string const& filename,
+ std::string const& instr, std::string& expected,
std::string& expectedhooks);
-
- // Extracts the required preprocessing options from the given input data
- // and initializes the given Wave context object accordingly.
- // We allow the same (applicable) options to be used as are valid for the
+
+ // Extracts the required preprocessing options from the given input data
+ // and initializes the given Wave context object accordingly.
+ // We allow the same (applicable) options to be used as are valid for the
// wave driver executable.
template <typename Context>
- bool extract_options(std::string const& filename,
- std::string const& instr, Context& ctx, bool single_line);
+ bool extract_options(std::string const& filename,
+ std::string const& instr, Context& ctx, bool single_line,
+ boost::program_options::variables_map& vm);
- // transfers the options collected in the vm parameter into the given
+ // transfers the options collected in the vm parameter into the given
// context
template <typename Context>
- bool initialise_options(Context& ctx,
+ bool initialise_options(Context& ctx,
boost::program_options::variables_map const& vm, bool single_line);
- // Preprocess the given input data and return the generated output through
+ // Preprocess the given input data and return the generated output through
// the parameter 'result'.
- bool preprocess_file(std::string filename, std::string const& instr,
- std::string& result, std::string& error, std::string& hooks,
+ bool preprocess_file(std::string filename, std::string const& instr,
+ std::string& result, std::string& error, std::string& hooks,
bool single_line = false);
// Add special predefined macros to the context object
template <typename Context>
bool add_predefined_macros(Context& ctx);
- // This function compares the real result and the expected one but first
- // replaces all occurrences in the expected result of
+ // This function compares the real result and the expected one but first
+ // replaces all occurrences in the expected result of
// $E: to the result of preprocessing the given expression
- // $F: to the passed full filepath
+ // $F: to the passed full filepath
// $P: to the full path
// $R: to the relative path
// $V: to the current Boost version number
- bool got_expected_result(std::string const& filename,
+ bool got_expected_result(std::string const& filename,
std::string const& result, std::string& expected);
// construct a SIZEOF macro definition string and predefine this macro
template <typename Context>
bool add_sizeof_definition(Context& ctx, char const *name, int value);
-
+
// construct a MIN macro definition string and predefine this macro
template <typename T, typename Context>
bool add_min_definition(Context& ctx, char const *name);
-
+
// construct a MAX macro definition string and predefine this macro
template <typename T, typename Context>
bool add_max_definition(Context& ctx, char const *name);
diff --git a/libs/wave/test/testwave/testwave_app_dll.cpp b/libs/wave/test/testwave/testwave_app_dll.cpp
index fc13812bae..ccc194831f 100644
--- a/libs/wave/test/testwave/testwave_app_dll.cpp
+++ b/libs/wave/test/testwave/testwave_app_dll.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/
diff --git a/libs/wave/test/testwave/testwave_dll.cpp b/libs/wave/test/testwave/testwave_dll.cpp
index 0039445aec..ac671b392b 100644
--- a/libs/wave/test/testwave/testwave_dll.cpp
+++ b/libs/wave/test/testwave/testwave_dll.cpp
@@ -2,7 +2,7 @@
Boost.Wave: A Standard compliant C++ preprocessor library
http://www.boost.org/
- Copyright (c) 2001-2011 Hartmut Kaiser. Distributed under the Boost
+ Copyright (c) 2001-2012 Hartmut Kaiser. Distributed under the Boost
Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
=============================================================================*/